This is the second version of the proposed patch to add more identifiers to the known list to give hints about #include and version numbers. Marek looked through the first version and found it acceptable but remarked that the list is getting long and the sequential search performed by the current code might not be adequate. Especially because I offered to add even more known names to the list. This second version replaces the current lookup implementation with a gperf-generated hash function. Since gperf is already a dependency for maintainers the use of the tool itself shouldn't be a problem. I followed the existing practice for the cfns.gperf file and its use so, if the handling of that file works, so should the handling of the new file, std-name-hint.gperf. Please let me know if this is acceptable. I built a compiler with this code and tested the hinting. contrib/ChangeLog * gcc_update (files_and_dependencies): Add gcc/cp/std-name-hint.h depend on gcc/cp/std-name-hint.gperf. gcc/cp/ChangeLog * Make-lang.in: Add rule to build std-name-hint.h. * name-lookup.cc (struct std_name_hint): Remove definition. Instead... Include "std-name-hint.h". (get_std_name_hint): Remove hints array and lookup code. Instead call std_name_hint_lookup::find. * std-name-hint.gperf: New file. * std-name-hint.h: New file.