llvm-project/clang/test/CXX/class/class.friend
Douglas Gregor 15e5602e59 Improve diagnostics when the parser encounters a declarator with an
unknown type name, e.g.,

  foo::bar x;

when "bar" does not refer to a type in "foo". 

With this change, the parser now calls into the action to perform
diagnostics and can try to recover by substituting in an appropriate
type. For example, this allows us to easily diagnose some missing
"typename" specifiers, which we now do:

  test/SemaCXX/unknown-type-name.cpp:29:1: error: missing 'typename'
        prior to dependent type name 'A<T>::type'
  A<T>::type A<T>::f() { return type(); }
  ^~~~~~~~~~
  typename 

Fixes PR3990.

llvm-svn: 84053
2009-10-13 23:27:22 +00:00
..
p1-ambiguous.cpp Fix bug 4784 and allow friend declarations to properly extend 2009-08-31 22:39:49 +00:00
p1.cpp Improve diagnostics when the parser encounters a declarator with an 2009-10-13 23:27:22 +00:00
p2.cpp Rework the Parse-Sema interaction for friends to better support friend 2009-09-26 06:47:28 +00:00
p6.cpp First pass at friend semantics. 2009-08-06 02:15:43 +00:00