[all-commits] [llvm/llvm-project] 4ac141: [C++20][Modules] NFC Reworked handling of inline f...

tomasz-kaminski-sonarsource via All-commits all-commits at lists.llvm.org
Tue Sep 24 00:35:00 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4ac141683c310447f0efba775dc59b2145511ac0
      https://github.com/llvm/llvm-project/commit/4ac141683c310447f0efba775dc59b2145511ac0
  Author: tomasz-kaminski-sonarsource <79814193+tomasz-kaminski-sonarsource at users.noreply.github.com>
  Date:   2024-09-24 (Tue, 24 Sep 2024)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/CXX/class/class.friend/p7-cxx20.cpp
    M clang/test/CXX/class/class.mfct/p1-cxx20.cpp

  Log Message:
  -----------
  [C++20][Modules] NFC Reworked handling of inline for functions defined in class (#109470)

Reworked handling of implicit inline marking for member and friend
function defined in class.
Now, we handle it in an additive manner, i.e. if such in-class functions
are inline implicitly by language rules,
we mark the as `setImplicitInline`, and perform no action otherwise.
As we never remove inline specifier, the implementation is orthogonal to
other sources of inline
(like `inline`, `constexpr`, e.t.c), and we do not need to handle them
specially.

Also included test for `constexpr`, `consteval` and global module cases.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list