Exuberant Ctags allows one to generate what is said to be an etags compatible TAGS file.
However, a call to list-tags fails on such a file because it includes 2 lines of file names per file rather than one.
Attached is a sample TAGS file that triggers the error with this call: (list-tags "hmouse-key.el")
and an associated patch that fixes it.
diff -u --label /Applications/Emacs25.app/Contents/Resources/lisp/progmodes/etags.el.gz\~ --label /Applications/Emacs25.app/Contents/Resources/lisp/progmodes/etags.el.gz /var/folders/8s/b7pm6fms2nsc1x2651dpvrd00000gn/T/jka-com77357KwE /var/folders/8s/b7pm6fms2nsc1x2651dpvrd00000gn/T/jka-com77357kER
--- /Applications/Emacs25.app/Contents/Resources/lisp/progmodes/etags.el.gz~
+++ /Applications/Emacs25.app/Contents/Resources/lisp/progmodes/etags.el.gz
@@ -1398,6 +1398,8 @@
(goto-func goto-tag-location-function)
tag tag-info pt)
(forward-line 1)
+ (if (looking-at "\177")
+ (forward-line 1))
(while (not (or (eobp) (looking-at "\f")))
;; We used to use explicit tags when available, but the current goto-func
;; can only handle implicit tags.
Diff finished. Fri Apr 29 10:23:18 2016