Ref: http://lists.gnu.org/archive/html/emacs-devel/2016-09/msg00692.html http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01215.html