[PATCH] Variable templates w/ partial support for static data members

Larisse Voufo lvoufo at google.com
Sat Aug 3 18:44:28 PDT 2013


  Cleaned up the tests cases a little bit, reviewing diagnosis for redefinitions of variable templates and variable template specializations.

  Some issues with static data members seem to have resolved themselves as well. However, there are still two important issues, identified in the test files, that need be addressed before working on further test cases:
  1. const pointer-typed static data member templates seem mis-diagnosed.
  2. The explicit specialization and instantiation of static data member templates of class templates leads to runtime exceptions.

  I will be inserting more test cases as indicated in the previous reviews, while treating the above issues as more of a priority. Please let me know if you disagree...

Hi rsmith,

http://llvm-reviews.chandlerc.com/D1067

CHANGE SINCE LAST DIFF
  http://llvm-reviews.chandlerc.com/D1067?vs=3176&id=3182#toc

Files:
  include/clang/AST/ASTContext.h
  include/clang/AST/ASTMutationListener.h
  include/clang/AST/Decl.h
  include/clang/AST/DeclTemplate.h
  include/clang/AST/RecursiveASTVisitor.h
  include/clang/Basic/DeclNodes.td
  include/clang/Basic/DiagnosticParseKinds.td
  include/clang/Basic/DiagnosticSemaKinds.td
  include/clang/Basic/TemplateKinds.h
  include/clang/Sema/Sema.h
  include/clang/Sema/Template.h
  include/clang/Serialization/ASTBitCodes.h
  include/clang/Serialization/ASTWriter.h
  lib/AST/ASTContext.cpp
  lib/AST/ASTImporter.cpp
  lib/AST/Decl.cpp
  lib/AST/DeclBase.cpp
  lib/AST/DeclTemplate.cpp
  lib/AST/ItaniumMangle.cpp
  lib/CodeGen/CGDecl.cpp
  lib/CodeGen/CodeGenModule.cpp
  lib/Frontend/MultiplexConsumer.cpp
  lib/Parse/ParseCXXInlineMethods.cpp
  lib/Parse/ParseDecl.cpp
  lib/Parse/ParseDeclCXX.cpp
  lib/Parse/ParseExprCXX.cpp
  lib/Parse/ParseTemplate.cpp
  lib/Parse/Parser.cpp
  lib/Sema/SemaDecl.cpp
  lib/Sema/SemaDeclCXX.cpp
  lib/Sema/SemaExpr.cpp
  lib/Sema/SemaTemplate.cpp
  lib/Sema/SemaTemplateDeduction.cpp
  lib/Sema/SemaTemplateInstantiate.cpp
  lib/Sema/SemaTemplateInstantiateDecl.cpp
  lib/Serialization/ASTCommon.cpp
  lib/Serialization/ASTReaderDecl.cpp
  lib/Serialization/ASTWriter.cpp
  lib/Serialization/ASTWriterDecl.cpp
  test/CXX/temp/temp.decls/temp.class/temp.static/p1.cpp
  test/CXX/temp/temp.spec/cxx1y-variable-template-no-body.cpp
  test/CXX/temp/temp.spec/temp.expl.spec/examples.cpp
  test/SemaCXX/conversion-function.cpp
  test/SemaCXX/cxx1y-variable-templates_in_class.cpp
  test/SemaCXX/cxx1y-variable-templates_top_level.cpp
  test/SemaCXX/for-range-examples.cpp
  test/SemaCXX/unknown-type-name.cpp
  test/SemaTemplate/class-template-decl.cpp
  tools/libclang/CIndex.cpp
  tools/libclang/RecursiveASTVisitor.h
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D1067.7.patch
Type: text/x-patch
Size: 266811 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20130803/207b796e/attachment.bin>


More information about the cfe-commits mailing list