[all-commits] [llvm/llvm-project] 4eff2b: [c++20] consteval functions don't get vtable slots.

Richard Smith via All-commits all-commits at lists.llvm.org
Tue Jun 30 18:23:06 PDT 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: 4eff2beefb2b655fc02d35de235fc86d72d05755
      https://github.com/llvm/llvm-project/commit/4eff2beefb2b655fc02d35de235fc86d72d05755
  Author: Richard Smith <richard at metafoo.co.uk>
  Date:   2020-06-30 (Tue, 30 Jun 2020)

  Changed paths:
    M clang/include/clang/AST/VTableBuilder.h
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    A clang/test/CodeGenCXX/vtable-consteval.cpp

  Log Message:
  -----------
  [c++20] consteval functions don't get vtable slots.

For the Itanium C++ ABI, this implements the rule added in
https://github.com/itanium-cxx-abi/cxx-abi/pull/83

For the MS C++ ABI, this implements the direction that seemed most
plausible based on personal correspondence with MSVC developers, but is
subject to change as they decide their ABI rule.




More information about the All-commits mailing list