[all-commits] [llvm/llvm-project] 008e7b: [C++20] Add consteval-specific semantic for functions

Ralender via All-commits all-commits at lists.llvm.org
Tue Feb 4 11:38:40 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 008e7bf92343b8bd6ebade5b3ddcfe4bb4e29f8d
      https://github.com/llvm/llvm-project/commit/008e7bf92343b8bd6ebade5b3ddcfe4bb4e29f8d
  Author: Tyker <tyker1 at outlook.com>
  Date:   2020-02-04 (Tue, 04 Feb 2020)

  Changed paths:
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCXX/cxx2a-consteval.cpp

  Log Message:
  -----------
  [C++20] Add consteval-specific semantic for functions

Summary:
Changes:
 - Calls to consteval function are now evaluated in constant context but IR is still generated for them.
 - Add diagnostic for taking address of a consteval function in non-constexpr context.
 - Add diagnostic for address of consteval function accessible at runtime.
 - Add tests

Reviewers: rsmith, aaron.ballman

Reviewed By: rsmith

Subscribers: mgrang, riccibruno, cfe-commits

Tags: #clang

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




More information about the All-commits mailing list