Subject: 24.5; Build failure with modules on OpenBSD
From: Joakim Jalap <[email-masked]>
To: [email-masked]
Date: Sat, 16 Jan 2016 18:43:40 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello

I discovered a little problem while trying to build emacs-25 with modules on
OpenBSD-current. The problem is that an assertion fails because
HAVE_ATTRIBUTE_CLEANUP is not true, even though I'm using clang which does
support the cleanup attribute (I think).

This is because the test for whether CC supports that attribute
(m4/ax_gcc_var_attribute.m4 m4/ax_gcc_var_attribute.m4) only checks if there
were warnings issued and if so decides that the compiler has no support. But
OpenBSDs linker (I think it is) outputs the following warnings:

/usr/X11R6/lib/libX11.so.16.1: warning: warning: strcpy() is almost always misused, please use strlcpy()
/usr/X11R6/lib/libX11.so.16.1: warning: warning: strcat() is almost always misused, please use strlcat()
/usr/X11R6/lib/libX11.so.16.1: warning: warning: sprintf() is often misused, please use snprintf()

which are completely unrelated to lack of attribute support.

The attached fix allows me to build. It isn't meant as a real solution,
it's more to illustrate the problem.

I guess another way to go migt be to run this test with empty linker flags, but
I haven't tried that.

Either way, I hope this is of some use.

-- Joakim

diff --git m4/ax_gcc_var_attribute.m4 m4/ax_gcc_var_attribute.m4
index d12fce8..963af5e 100644
--- m4/ax_gcc_var_attribute.m4
+++ m4/ax_gcc_var_attribute.m4
@@ -55,6 +55,11 @@
 #serial 3
 
 AC_DEFUN([AX_GCC_VAR_ATTRIBUTE], [
+
+    dnl Temporarily make unknown attributes an error
+    OLDCFLAGS="$CFLAGS"
+    CFLAGS="$CFLAGS -Werror=attributes"
+
     AS_VAR_PUSHDEF([ac_var], [ax_cv_have_var_attribute_$1])
 
     AC_CACHE_CHECK([for __attribute__(($1))], [ac_var], [
@@ -124,15 +129,12 @@ AC_DEFUN([AX_GCC_VAR_ATTRIBUTE], [
                 []
             )])
             ],
-            dnl GCC doesn't exit with an error if an unknown attribute is
-            dnl provided but only outputs a warning, so accept the attribute
-            dnl only if no warning were issued.
-            [AS_IF([test -s conftest.err],
-                [AS_VAR_SET([ac_var], [no])],
-                [AS_VAR_SET([ac_var], [yes])])],
+            [AS_VAR_SET([ac_var], [yes])],
             [AS_VAR_SET([ac_var], [no])])
     ])
 
+    CFLAGS="$OLDCFLAGS"
+
     AS_IF([test yes = AS_VAR_GET([ac_var])],
         [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_VAR_ATTRIBUTE_$1), 1,
             [Define to 1 if the system has the `$1' variable attribute])], [])

In GNU Emacs 24.5.1 (x86_64-unknown-openbsd, GTK+ Version 3.18.6)
 of 2015-12-09 on amd64.ports.openbsd.org
Windowing system distributor `The X.Org Foundation', version 11.0.11704000
Configured using:
 `configure --build=amd64-unknown-openbsd --without-sound
 --with-x-toolkit=gtk3 --prefix=/usr/local --sysconfdir=/etc
 --mandir=/usr/local/man --infodir=/usr/local/info --localstatedir=/var
 --disable-silent-rules --disable-gtk-doc 'CFLAGS=-O2 -pipe -fno-pie'
 CPPFLAGS=-I/usr/local/include 'LDFLAGS=-L/usr/local/lib -nopie''

Important settings:
  locale-coding-system: nil

Major mode: Org

Minor modes in effect:
  show-paren-mode: t
  global-linum-mode: t
  rich-minority-mode: t
  global-cwarn-mode: t
  global-git-commit-mode: t
  async-bytecomp-package-mode: t
  shell-dirtrack-mode: t
  global-semantic-idle-scheduler-mode: t
  global-semanticdb-minor-mode: t
  semantic-mode: t
  erc-notifications-mode: t
  erc-list-mode: t
  erc-menu-mode: t
  erc-autojoin-mode: t
  erc-ring-mode: t
  erc-networks-mode: t
  erc-pcomplete-mode: t
  erc-track-mode: t
  erc-match-mode: t
  erc-button-mode: t
  erc-fill-mode: t
  erc-stamp-mode: t
  erc-netsplit-mode: t
  erc-irccontrols-mode: t
  erc-noncommands-mode: t
  erc-move-to-prompt-mode: t
  erc-readonly-mode: t
  w3m-fb-mode: t
  global-hl-line-mode: t
  diff-auto-refine-mode: t
  global-company-mode: t
  company-mode: t
  TeX-PDF-mode: t
  TeX-source-correlate-mode: t
  flx-ido-mode: t
  ido-everywhere: t
  global-undo-tree-mode: t
  undo-tree-mode: t
  global-auto-revert-mode: t
  projectile-global-mode: t
  projectile-mode: t
  tooltip-mode: t
  electric-indent-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  font-lock-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  auto-fill-function: do-auto-fill
  transient-mark-mode: t

Recent messages:
 [2 times]
Buffer is read-only
(emacs gnus type)
Buffer is read-only
Describe-Function...
Making completion list...
Quit
Entering debugger...
Back to top level.
Making completion list... [3 times]
gnus-user-agent

Load-path shadows:
/home/joakim/.emacs.d/elpa/helm-20151106.2158/helm-multi-match hides /home/joakim/.emacs.d/elpa/helm-core-20151104.0/helm-multi-match
/home/joakim/.emacs.d/elpa/org-20151005/org-protocol hides /usr/local/share/emacs/24.5/lisp/org/org-protocol
/home/joakim/.emacs.d/elpa/org-20151005/org-pcomplete hides /usr/local/share/emacs/24.5/lisp/org/org-pcomplete
/home/joakim/.emacs.d/elpa/org-20151005/org-eshell hides /usr/local/share/emacs/24.5/lisp/org/org-eshell
/home/joakim/.emacs.d/elpa/org-20151005/org-element hides /usr/local/share/emacs/24.5/lisp/org/org-element
/home/joakim/.emacs.d/elpa/org-20151005/ob-plantuml hides /usr/local/share/emacs/24.5/lisp/org/ob-plantuml
/home/joakim/.emacs.d/elpa/org-20151005/ob-picolisp hides /usr/local/share/emacs/24.5/lisp/org/ob-picolisp
/home/joakim/.emacs.d/elpa/org-20151005/ob-maxima hides /usr/local/share/emacs/24.5/lisp/org/ob-maxima
/home/joakim/.emacs.d/elpa/org-20151005/ob-lilypond hides /usr/local/share/emacs/24.5/lisp/org/ob-lilypond
/home/joakim/.emacs.d/elpa/org-20151005/ob-ledger hides /usr/local/share/emacs/24.5/lisp/org/ob-ledger
/home/joakim/.emacs.d/elpa/org-20151005/ob-octave hides /usr/local/share/emacs/24.5/lisp/org/ob-octave
/home/joakim/.emacs.d/elpa/org-20151005/ob-lob hides /usr/local/share/emacs/24.5/lisp/org/ob-lob
/home/joakim/.emacs.d/elpa/org-20151005/org-inlinetask hides /usr/local/share/emacs/24.5/lisp/org/org-inlinetask
/home/joakim/.emacs.d/elpa/org-20151005/org-footnote hides /usr/local/share/emacs/24.5/lisp/org/org-footnote
/home/joakim/.emacs.d/elpa/org-20151005/ob-fortran hides /usr/local/share/emacs/24.5/lisp/org/ob-fortran
/home/joakim/.emacs.d/elpa/org-20151005/ob-dot hides /usr/local/share/emacs/24.5/lisp/org/ob-dot
/home/joakim/.emacs.d/elpa/org-20151005/ob-tangle hides /usr/local/share/emacs/24.5/lisp/org/ob-tangle
/home/joakim/.emacs.d/elpa/org-20151005/ob-css hides /usr/local/share/emacs/24.5/lisp/org/ob-css
/home/joakim/.emacs.d/elpa/org-20151005/ob-sql hides /usr/local/share/emacs/24.5/lisp/org/ob-sql
/home/joakim/.emacs.d/elpa/org-20151005/ob-core hides /usr/local/share/emacs/24.5/lisp/org/ob-core
/home/joakim/.emacs.d/elpa/org-20151005/org-datetree hides /usr/local/share/emacs/24.5/lisp/org/org-datetree
/home/joakim/.emacs.d/elpa/org-20151005/org-capture hides /usr/local/share/emacs/24.5/lisp/org/org-capture
/home/joakim/.emacs.d/elpa/org-20151005/ob-python hides /usr/local/share/emacs/24.5/lisp/org/ob-python
/home/joakim/.emacs.d/elpa/org-20151005/ox-org hides /usr/local/share/emacs/24.5/lisp/org/ox-org
/home/joakim/.emacs.d/elpa/org-20151005/org-plot hides /usr/local/share/emacs/24.5/lisp/org/org-plot
/home/joakim/.emacs.d/elpa/org-20151005/ob-clojure hides /usr/local/share/emacs/24.5/lisp/org/ob-clojure
/home/joakim/.emacs.d/elpa/org-20151005/ob-C hides /usr/local/share/emacs/24.5/lisp/org/ob-C
/home/joakim/.emacs.d/elpa/org-20151005/org-irc hides /usr/local/share/emacs/24.5/lisp/org/org-irc
/home/joakim/.emacs.d/elpa/org-20151005/ox-html hides /usr/local/share/emacs/24.5/lisp/org/ox-html
/home/joakim/.emacs.d/elpa/org-20151005/ob-org hides /usr/local/share/emacs/24.5/lisp/org/ob-org
/home/joakim/.emacs.d/elpa/org-20151005/org-id hides /usr/local/share/emacs/24.5/lisp/org/org-id
/home/joakim/.emacs.d/elpa/org-20151005/org-w3m hides /usr/local/share/emacs/24.5/lisp/org/org-w3m
/home/joakim/.emacs.d/elpa/org-20151005/org-macro hides /usr/local/share/emacs/24.5/lisp/org/org-macro
/home/joakim/.emacs.d/elpa/org-20151005/ox-md hides /usr/local/share/emacs/24.5/lisp/org/ox-md
/home/joakim/.emacs.d/elpa/org-20151005/org-src hides /usr/local/share/emacs/24.5/lisp/org/org-src
/home/joakim/.emacs.d/elpa/org-20151005/org-docview hides /usr/local/share/emacs/24.5/lisp/org/org-docview
/home/joakim/.emacs.d/elpa/org-20151005/ob-awk hides /usr/local/share/emacs/24.5/lisp/org/ob-awk
/home/joakim/.emacs.d/elpa/org-20151005/ob-scala hides /usr/local/share/emacs/24.5/lisp/org/ob-scala
/home/joakim/.emacs.d/elpa/org-20151005/org-attach hides /usr/local/share/emacs/24.5/lisp/org/org-attach
/home/joakim/.emacs.d/elpa/org-20151005/ob-table hides /usr/local/share/emacs/24.5/lisp/org/ob-table
/home/joakim/.emacs.d/elpa/org-20151005/org-feed hides /usr/local/share/emacs/24.5/lisp/org/org-feed
/home/joakim/.emacs.d/elpa/org-20151005/org-compat hides /usr/local/share/emacs/24.5/lisp/org/org-compat
/home/joakim/.emacs.d/elpa/org-20151005/ob-ocaml hides /usr/local/share/emacs/24.5/lisp/org/ob-ocaml
/home/joakim/.emacs.d/elpa/org-20151005/ob-scheme hides /usr/local/share/emacs/24.5/lisp/org/ob-scheme
/home/joakim/.emacs.d/elpa/org-20151005/org-bbdb hides /usr/local/share/emacs/24.5/lisp/org/org-bbdb
/home/joakim/.emacs.d/elpa/org-20151005/ob-calc hides /usr/local/share/emacs/24.5/lisp/org/ob-calc
/home/joakim/.emacs.d/elpa/org-20151005/org-ctags hides /usr/local/share/emacs/24.5/lisp/org/org-ctags
/home/joakim/.emacs.d/elpa/org-20151005/org-archive hides /usr/local/share/emacs/24.5/lisp/org/org-archive
/home/joakim/.emacs.d/elpa/org-20151005/org-entities hides /usr/local/share/emacs/24.5/lisp/org/org-entities
/home/joakim/.emacs.d/elpa/org-20151005/ob-comint hides /usr/local/share/emacs/24.5/lisp/org/ob-comint
/home/joakim/.emacs.d/elpa/org-20151005/ob-matlab hides /usr/local/share/emacs/24.5/lisp/org/ob-matlab
/home/joakim/.emacs.d/elpa/org-20151005/org-mhe hides /usr/local/share/emacs/24.5/lisp/org/org-mhe
/home/joakim/.emacs.d/elpa/org-20151005/ob-lisp hides /usr/local/share/emacs/24.5/lisp/org/ob-lisp
/home/joakim/.emacs.d/elpa/org-20151005/ox-beamer hides /usr/local/share/emacs/24.5/lisp/org/ox-beamer
/home/joakim/.emacs.d/elpa/org-20151005/org-rmail hides /usr/local/share/emacs/24.5/lisp/org/org-rmail
/home/joakim/.emacs.d/elpa/org-20151005/org-colview hides /usr/local/share/emacs/24.5/lisp/org/org-colview
/home/joakim/.emacs.d/elpa/org-20151005/org-gnus hides /usr/local/share/emacs/24.5/lisp/org/org-gnus
/home/joakim/.emacs.d/elpa/org-20151005/ob-makefile hides /usr/local/share/emacs/24.5/lisp/org/ob-makefile
/home/joakim/.emacs.d/elpa/org-20151005/ob-emacs-lisp hides /usr/local/share/emacs/24.5/lisp/org/ob-emacs-lisp
/home/joakim/.emacs.d/elpa/org-20151005/ob-shen hides /usr/local/share/emacs/24.5/lisp/org/ob-shen
/home/joakim/.emacs.d/elpa/org-20151005/ob-haskell hides /usr/local/share/emacs/24.5/lisp/org/ob-haskell
/home/joakim/.emacs.d/elpa/org-20151005/ob-java hides /usr/local/share/emacs/24.5/lisp/org/ob-java
/home/joakim/.emacs.d/elpa/org-20151005/ob-sqlite hides /usr/local/share/emacs/24.5/lisp/org/ob-sqlite
/home/joakim/.emacs.d/elpa/org-20151005/ob-latex hides /usr/local/share/emacs/24.5/lisp/org/ob-latex
/home/joakim/.emacs.d/elpa/org-20151005/ob-mscgen hides /usr/local/share/emacs/24.5/lisp/org/ob-mscgen
/home/joakim/.emacs.d/elpa/org-20151005/ob-screen hides /usr/local/share/emacs/24.5/lisp/org/ob-screen
/home/joakim/.emacs.d/elpa/org-20151005/org-macs hides /usr/local/share/emacs/24.5/lisp/org/org-macs
/home/joakim/.emacs.d/elpa/org-20151005/org-timer hides /usr/local/share/emacs/24.5/lisp/org/org-timer
/home/joakim/.emacs.d/elpa/org-20151005/ob-ref hides /usr/local/share/emacs/24.5/lisp/org/ob-ref
/home/joakim/.emacs.d/elpa/org-20151005/ob-perl hides /usr/local/share/emacs/24.5/lisp/org/ob-perl
/home/joakim/.emacs.d/elpa/org-20151005/org-faces hides /usr/local/share/emacs/24.5/lisp/org/org-faces
/home/joakim/.emacs.d/elpa/org-20151005/org-table hides /usr/local/share/emacs/24.5/lisp/org/org-table
/home/joakim/.emacs.d/elpa/org-20151005/ob-gnuplot hides /usr/local/share/emacs/24.5/lisp/org/ob-gnuplot
/home/joakim/.emacs.d/elpa/org-20151005/ob-eval hides /usr/local/share/emacs/24.5/lisp/org/ob-eval
/home/joakim/.emacs.d/elpa/org-20151005/ox-latex hides /usr/local/share/emacs/24.5/lisp/org/ox-latex
/home/joakim/.emacs.d/elpa/org-20151005/ob-io hides /usr/local/share/emacs/24.5/lisp/org/ob-io
/home/joakim/.emacs.d/elpa/org-20151005/ox-man hides /usr/local/share/emacs/24.5/lisp/org/ox-man
/home/joakim/.emacs.d/elpa/org-20151005/org-habit hides /usr/local/share/emacs/24.5/lisp/org/org-habit
/home/joakim/.emacs.d/elpa/org-20151005/org-crypt hides /usr/local/share/emacs/24.5/lisp/org/org-crypt
/home/joakim/.emacs.d/elpa/org-20151005/ob-asymptote hides /usr/local/share/emacs/24.5/lisp/org/ob-asymptote
/home/joakim/.emacs.d/elpa/org-20151005/org-mouse hides /usr/local/share/emacs/24.5/lisp/org/org-mouse
/home/joakim/.emacs.d/elpa/org-20151005/org-version hides /usr/local/share/emacs/24.5/lisp/org/org-version
/home/joakim/.emacs.d/elpa/org-20151005/org-indent hides /usr/local/share/emacs/24.5/lisp/org/org-indent
/home/joakim/.emacs.d/elpa/org-20151005/ox-texinfo hides /usr/local/share/emacs/24.5/lisp/org/ox-texinfo
/home/joakim/.emacs.d/elpa/org-20151005/org-mobile hides /usr/local/share/emacs/24.5/lisp/org/org-mobile
/home/joakim/.emacs.d/elpa/org-20151005/ob-exp hides /usr/local/share/emacs/24.5/lisp/org/ob-exp
/home/joakim/.emacs.d/elpa/org-20151005/ox-odt hides /usr/local/share/emacs/24.5/lisp/org/ox-odt
/home/joakim/.emacs.d/elpa/org-20151005/ob-keys hides /usr/local/share/emacs/24.5/lisp/org/ob-keys
/home/joakim/.emacs.d/elpa/org-20151005/ox-ascii hides /usr/local/share/emacs/24.5/lisp/org/ox-ascii
/home/joakim/.emacs.d/elpa/org-20151005/org-agenda hides /usr/local/share/emacs/24.5/lisp/org/org-agenda
/home/joakim/.emacs.d/elpa/org-20151005/ox-publish hides /usr/local/share/emacs/24.5/lisp/org/ox-publish
/home/joakim/.emacs.d/elpa/org-20151005/ob-js hides /usr/local/share/emacs/24.5/lisp/org/ob-js
/home/joakim/.emacs.d/elpa/org-20151005/ob-R hides /usr/local/share/emacs/24.5/lisp/org/ob-R
/home/joakim/.emacs.d/elpa/org-20151005/org hides /usr/local/share/emacs/24.5/lisp/org/org
/home/joakim/.emacs.d/elpa/org-20151005/org-list hides /usr/local/share/emacs/24.5/lisp/org/org-list
/home/joakim/.emacs.d/elpa/org-20151005/org-install hides /usr/local/share/emacs/24.5/lisp/org/org-install
/home/joakim/.emacs.d/elpa/org-20151005/ob-ditaa hides /usr/local/share/emacs/24.5/lisp/org/ob-ditaa
/home/joakim/.emacs.d/elpa/org-20151005/org-info hides /usr/local/share/emacs/24.5/lisp/org/org-info
/home/joakim/.emacs.d/elpa/org-20151005/ob hides /usr/local/share/emacs/24.5/lisp/org/ob
/home/joakim/.emacs.d/elpa/org-20151005/ox-icalendar hides /usr/local/share/emacs/24.5/lisp/org/ox-icalendar
/home/joakim/.emacs.d/elpa/org-20151005/ob-sass hides /usr/local/share/emacs/24.5/lisp/org/ob-sass
/home/joakim/.emacs.d/elpa/org-20151005/org-loaddefs hides /usr/local/share/emacs/24.5/lisp/org/org-loaddefs
/home/joakim/.emacs.d/elpa/org-20151005/ox hides /usr/local/share/emacs/24.5/lisp/org/ox
/home/joakim/.emacs.d/elpa/org-20151005/org-clock hides /usr/local/share/emacs/24.5/lisp/org/org-clock
/home/joakim/.emacs.d/elpa/org-20151005/ob-ruby hides /usr/local/share/emacs/24.5/lisp/org/ob-ruby
/home/joakim/.emacs.d/elpa/org-20151005/org-bibtex hides /usr/local/share/emacs/24.5/lisp/org/org-bibtex
/home/joakim/.emacs.d/elpa/emms-20150810.832/tq hides /usr/local/share/emacs/24.5/lisp/emacs-lisp/tq

Features:
(shadow bbdb-message mail-extr gnus-msg gnus-art mm-uu mml2015 debug
org-rmail org-mhe org-irc org-info org-gnus org-docview org-bibtex
bibtex org-bbdb org-element org-w3m ispell emacsbug mule-util view
eieio-opt whitespace m4-mode smex sh-script smie executable misearch
multi-isearch vc-git solarized-dark-theme solarized company-files
company-oddmuse company-keywords company-etags company-gtags
company-dabbrev-code company-dabbrev company-capf company-cmake
company-xcode company-clang company-semantic company-eclim company-css
company-nxml company-bbdb emms-mode-line emms-info-ogginfo
emms-info-mp3info emms-player-vlc emms-player-mplayer emms-browser sort
emms-playlist-sort emms-playlist-mode emms-last-played emms-player-mpd
emms-url emms-cache emms-info later-do tq emms-source-playlist
emms-source-file locate emms-player-simple emms-setup emms emms-compat
paren linum-off linum rich-minority f90 fortran cus-edit cus-start
cus-load py-autopep8 company-anaconda anaconda-mode pythonic f python
cwarn company-irony irony-completion irony-snippet irony company-rtags
company-template rtags popup repeat bookmark function-args
semantic-directory semantic/ia etags srefactor subr-x srefactor-ui
recentf tree-widget srecode/semantic semantic/senator semantic/decorate
pulse srecode/insert srecode/filters srecode/args ede/speedbar ede/files
ede ede/base ede/auto ede/source eieio-speedbar speedbar sb-image dframe
eieio-custom srecode/find srecode/map srecode/ctxt srecode/compile
srecode/dictionary srecode/table srecode semantic/doc semantic/bovine/c
hideif semantic/bovine/c-by semantic/lex-spp semantic/bovine/gcc
semantic/dep semantic/bovine semantic/analyze/refs semantic/analyze
semantic/sort semantic/scope semantic/analyze/fcn cc-mode cc-fonts
cc-guess cc-menus cc-cmds cc-styles cc-align cc-engine cc-vars cc-defs
dsvn vc vc-dispatcher magit-blame magit-stash magit-bisect magit-remote
magit-commit magit-sequence magit magit-apply magit-wip magit-log
magit-diff smerge-mode magit-core magit-process magit-popup magit-mode
magit-git magit-section magit-utils git-commit log-edit pcvs-util
add-log with-editor async-bytecomp async tramp-sh tramp tramp-compat
tramp-loaddefs trampver shell comment-dwim-2 origami origami-parsers
semantic/idle semantic/format ezimage semantic/tag-ls semantic/find
semantic/ctxt inversion semantic/db-global semantic/symref/global
semantic/symref semantic/db-find semantic/db-ref cedet-global
semantic/db-mode semantic/db eieio-base semantic/util-modes
semantic/util semantic semantic/tag semantic/lex semantic/fw mode-local
cedet lice mentor xml-rpc url-http tls url-auth url-gw url-scgi
google-translate-smooth-ui google-translate google-translate-default-ui
google-translate-core-ui google-translate-core elfeed-show elfeed-db
elfeed-lib avl-tree elfeed-search elfeed url-queue xml-query
erc-desktop-notifications notifications erc-list erc-menu erc-join
erc-ring erc-networks erc-pcomplete erc-track erc-match erc-button
erc-fill erc-stamp erc-netsplit erc-goodies erc erc-backend erc-compat
gnutls weechat-complete weechat-button weechat weechat-color rx
weechat-relay bindat weechat-core s ucs-normalize conkeror-minor-mode
w3m-lnum w3m-search w3m doc-view jka-compr image-mode w3m-hist w3m-fb
bookmark-w3m w3m-ems w3m-ccl ccl w3m-favicon w3m-image w3m-proc w3m-util
eww-lnum eww mm-url url url-proxy url-privacy url-expand url-methods
url-history url-cookie url-domsuf url-util shr browse-url bbdb-mua
bbdb-com bbdb bbdb-site timezone notmuch hl-line notmuch-message
notmuch-maildir-fcc notmuch-hello notmuch-tree notmuch-show
notmuch-print notmuch-crypto notmuch-mua notmuch-address notmuch-company
notmuch-parser notmuch-wash diff-mode coolj notmuch-query goto-addr
icalendar diary-lib diary-loaddefs notmuch-tag notmuch-lib mm-view
mml-smime smime dig mailcap nnir gnus-sum gnus-group gnus-undo nnmail
mail-source nnoo mbsync smtpmail sendmail gnus-sync gnus-start gnus-spec
gnus-int gnus-range message idna rfc822 mml mml-sec mm-decode mm-bodies
mm-encode mail-parse rfc2231 rfc2047 rfc2045 ietf-drums mailabbrev
gmm-utils mailheader gnus-win json gnus gnus-ems nnheader mail-utils
wid-edit company-math math-symbol-lists company-auctex yasnippet company
pcase latex tex-style tex dbus xml crm swiper ivy delsel ffap url-parse
auth-source gnus-util mm-util mail-prsvr password-cache url-vars idomenu
imenu ace-link ace-window em-smart esh-var esh-io esh-cmd esh-opt
esh-ext esh-proc esh-arg eldoc esh-groups eshell esh-module esh-mode
esh-util multi-term term disp-table ehelp flx-ido flx ido avy-zap avy
move-text undo-tree diff hydra lv multiple-cursors
mc-hide-unmatched-lines-mode mc-separate-operations
rectangular-region-mode mc-mark-pop mc-mark-more mc-cycle-cursors
mc-edit-lines multiple-cursors-core rect org-table misc
programmers-dvorak quail edmacro kmacro dired+ image-dired image-file
dired-aux dired-x server pinentry autorevert filenotify projectile grep
compile ibuf-ext ibuffer dash thingatpt ignoramus el-get
el-get-autoloading el-get-list-packages el-get-dependencies el-get-build
el-get-status pp el-get-methods el-get-fossil el-get-svn el-get-pacman
el-get-github-zip el-get-github-tar el-get-http-zip el-get-http-tar
el-get-hg el-get-go el-get-git-svn el-get-fink el-get-emacswiki
el-get-http el-get-notify help-mode el-get-emacsmirror el-get-github
el-get-git el-get-elpa el-get-darcs el-get-cvs el-get-bzr el-get-brew
el-get-builtin el-get-apt-get el-get-recipes el-get-byte-compile
el-get-custom el-get-core autoload lisp-mnt dired finder-inf org advice
org-macro org-footnote org-pcomplete pcomplete org-list org-faces
org-entities time-date noutline outline easy-mmode org-version
ob-emacs-lisp ob ob-tangle ob-ref ob-lob ob-table ob-exp org-src ob-keys
ob-comint comint ansi-color ring ob-core ob-eval org-compat org-macs
org-loaddefs format-spec find-func cal-menu calendar cal-loaddefs
tex-site eieio byte-opt bytecomp byte-compile cl-extra cconv eieio-core
help-fns cl-macs cl gv cl-loaddefs cl-lib info easymenu package
epg-config tooltip electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list newcomment lisp-mode prog-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button
faces cus-face macroexp files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind gfilenotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)

Memory information:
((conses 16 1027147 421321)
 (symbols 48 76509 1)
 (miscs 40 863 1582)
 (strings 32 207041 118087)
 (string-bytes 1 6146562)
 (vectors 16 147798)
 (vector-slots 8 3193259 446740)
 (floats 8 17152 16902)
 (intervals 56 10608 3318)
 (buffers 960 31))