bloomberg / clang-p2996

Experimental clang support for WG21 P2996 (Reflection).
https://github.com/bloomberg/clang-p2996/tree/p2996/P2996.md
51 stars 8 forks source link

Issue #45: Implement is_noexcept meta function #56

Closed delimbetov closed 2 months ago

delimbetov commented 3 months ago

Issue number of the reported bug or feature request: #45

Describe your changes Added is_noexcept as per P2996r5 spec. The function checks for noexcept on:

  1. (virtual) Method and it's type
  2. Template method instantiation and it's type
  3. Function and it's type
  4. Function template instantiation and it's type

For everything else it returns false.

Testing performed Tests added to libcxx to cover all supported scenarios.

katzdm commented 2 months ago

Hey @delimbetov - We got feedback from LEWG this week to reduce the scope of this function. Please see the latest spec here, and modify accordingly. Looking forward to taking another look thereafter; let me know.

delimbetov commented 2 months ago

Hey @delimbetov - We got feedback from LEWG this week to reduce the scope of this function. Please see the latest spec here, and modify accordingly. Looking forward to taking another look thereafter; let me know.

Updated @katzdm