helm-gtags and ggtags are clients for GNU Global. GNU Global is a source
code tagging system that allows querying symbol locations in source
code, such as definitions or references. Currently, helm-gtags with GNU
Global is faster than anything else in Emacs for retrieving a large
amount of candidates (even more than 10000 candidates, the list appears
in an instant) and offers more features for language that GNU Global
directly: C, C++, Yacc, Java, PHP4 and assembly.
ggtags is nice for its eldoc support such as display variable/function
definition retrieved from the tag database. However, we disable ggtags
in some modes because those modes have better eldoc integration
already. We add ggtags for this feature alone.