[all-commits] [llvm/llvm-project] 0a9c08: [Clang] Implement P2280R4 Using unknown pointers a...

Shafik Yaghmour via All-commits all-commits at lists.llvm.org
Wed Jan 22 00:28:29 PST 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 0a9c08c59ba61e727e9dee6d71883d9106963442
      https://github.com/llvm/llvm-project/commit/0a9c08c59ba61e727e9dee6d71883d9106963442
  Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
  Date:   2025-01-22 (Wed, 22 Jan 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/APValue.h
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/constant-expression-cxx2a.cpp
    A clang/test/SemaCXX/constant-expression-p2280r4.cpp
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [Clang] Implement P2280R4 Using unknown pointers and references in constant expressions (#95474)

P2280R4 allows the use of references in pointers of unknown origins in a
constant expression context but only in specific cases that could be
constant expressions.

We track whether a variable is a constexpr unknown in a constant
expression by setting a flag in either APValue or LValue and using this
flag to prevent using unknown values in places where it is not allowed.

Fixes: https://github.com/llvm/llvm-project/issues/63139 https://github.com/llvm/llvm-project/issues/63117



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