[all-commits] [llvm/llvm-project] 4b6c2c: Deferred Concept Instantiation Implementation

Erich Keane via All-commits all-commits at lists.llvm.org
Mon May 2 06:07:00 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4b6c2cd647e9e5a147954886338f97ffb6a1bcfb
      https://github.com/llvm/llvm-project/commit/4b6c2cd647e9e5a147954886338f97ffb6a1bcfb
  Author: Erich Keane <erich.keane at intel.com>
  Date:   2022-05-02 (Mon, 02 May 2022)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/Template.h
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/ExtractAPI/ExtractAPIConsumer.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/test/CXX/temp/temp.constr/temp.constr.constr/non-function-templates.cpp
    M clang/test/SemaTemplate/concepts.cpp
    A clang/test/SemaTemplate/deferred-concept-inst.cpp
    M clang/test/SemaTemplate/instantiate-requires-clause.cpp
    A clang/test/SemaTemplate/trailing-return-short-circuit.cpp

  Log Message:
  -----------
  Deferred Concept Instantiation Implementation

As reported here: https://github.com/llvm/llvm-project/issues/44178

Concepts are not supposed to be instantiated until they are checked, so
this patch implements that and goes through significant amounts of work
to make sure we properly re-instantiate the concepts correctly.

Differential Revision: https://reviews.llvm.org/D119544




More information about the All-commits mailing list