error17.C
168 Bytes
-
re PR c++/16965 (Confusing mismatch in error messages) · 8f78f01f
PR c++/16965 * cp-tree.h (qualified_name_lookup_error): Add parameter. * name-lookup.c (do_class_using_decl): Restrict set of entities passed to cp_emit_debug_info_for_using more carefully. (lookup_qualified_name): Allow lookup_member to return sets of ambiguous entries. * parser.c (cp_parser_lookup_name): Add ambiguous_p parameter. (cp_parser_primary_expression): Handle ambiguous lookups. (cp_parser_template_name): Adjust use of cp_parser_lookup_name. (cp_parser_template_argument): Likewise. (cp_parser_elaborate_type_specifier): Likewise. (cp_parser_namespace_name): Likewise. (cp_parser_class_name): Likewise. (cp_parser_lookup_name_simple): Likewise. * pt.c (tsubst_qualified_id): Handle ambiguous results. (tsubst_expr): Likewise. * semantics.c (qualified_name_lookup_error): Add decl paramter. For ambiguous lookups, print candidates. PR c++/16965 * g++.dg/parse/error17.C: New test. From-SVN: r86137
Mark Mitchell committed