[cfe-commits] r132704 - in /cfe/trunk: include/clang/Basic/DiagnosticSemaKinds.td test/CXX/temp/temp.spec/temp.explicit/p2.cpp

Douglas Gregor dgregor at apple.com
Mon Jun 6 19:21:19 PDT 2011


Author: dgregor
Date: Mon Jun  6 21:21:18 2011
New Revision: 132704

URL: http://llvm.org/viewvc/llvm-project?rev=132704&view=rev
Log:
Downgrade the warning about the use of typedefs for class template
specializations within an explicit instantiation to default to off
(enabled by -pedantic). Nobody else seem to implement C++
[temp.explicit]p3. Fixes PR10093.

Modified:
    cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
    cfe/trunk/test/CXX/temp/temp.spec/temp.explicit/p2.cpp

Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td?rev=132704&r1=132703&r2=132704&view=diff
==============================================================================
--- cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td (original)
+++ cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td Mon Jun  6 21:21:18 2011
@@ -2047,7 +2047,7 @@
   "explicit instantiation candidate function template here %0">;
 def err_explicit_instantiation_inline : Error<
   "explicit instantiation cannot be 'inline'">;
-def ext_explicit_instantiation_without_qualified_id : ExtWarn<
+def ext_explicit_instantiation_without_qualified_id : Extension<
   "qualifier in explicit instantiation of %q0 requires a template-id "
   "(a typedef is not permitted)">;
 def err_explicit_instantiation_unqualified_wrong_namespace : Error<

Modified: cfe/trunk/test/CXX/temp/temp.spec/temp.explicit/p2.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/CXX/temp/temp.spec/temp.explicit/p2.cpp?rev=132704&r1=132703&r2=132704&view=diff
==============================================================================
--- cfe/trunk/test/CXX/temp/temp.spec/temp.explicit/p2.cpp (original)
+++ cfe/trunk/test/CXX/temp/temp.spec/temp.explicit/p2.cpp Mon Jun  6 21:21:18 2011
@@ -1,4 +1,4 @@
-// RUN: %clang_cc1 -fsyntax-only -verify %s
+// RUN: %clang_cc1 -fsyntax-only -verify -pedantic %s
 
 // Example from the standard
 template<class T> class Array { void mf() { } }; 
@@ -35,7 +35,7 @@
   };
   
   template<typename T>
-  void f1(T) {}; // expected-note{{explicit instantiation refers here}}
+  void f1(T) {} // expected-note{{explicit instantiation refers here}}
 }
 using namespace N;
 





More information about the cfe-commits mailing list