[cfe-commits] r80785 - /cfe/trunk/lib/Sema/SemaTemplate.cpp

Douglas Gregor dgregor at apple.com
Wed Sep 2 06:12:52 PDT 2009


Author: dgregor
Date: Wed Sep  2 08:12:51 2009
New Revision: 80785

URL: http://llvm.org/viewvc/llvm-project?rev=80785&view=rev
Log:
Document how we intepret C++ DR 382

Modified:
    cfe/trunk/lib/Sema/SemaTemplate.cpp

Modified: cfe/trunk/lib/Sema/SemaTemplate.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/SemaTemplate.cpp?rev=80785&r1=80784&r2=80785&view=diff

==============================================================================
--- cfe/trunk/lib/Sema/SemaTemplate.cpp (original)
+++ cfe/trunk/lib/Sema/SemaTemplate.cpp Wed Sep  2 08:12:51 2009
@@ -3033,6 +3033,12 @@
     // instantiation, then build a typename type.
     if (!CurrentInstantiation)
       return Context.getTypenameType(NNS, &II);
+    
+    // The nested-name-specifier refers to the current instantiation, so the
+    // "typename" keyword itself is superfluous. In C++03, the program is
+    // actually ill-formed. However, DR 382 (in C++0x CD1) allows such 
+    // extraneous "typename" keywords, and we retroactively apply this DR to
+    // C++03 code.
   }
 
   DeclContext *Ctx = 0;





More information about the cfe-commits mailing list