diff options
author | Dmitriy Chestnykh <dm.chestnykh@gmail.com> | 2024-07-08 20:09:42 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-08 13:09:42 -0400 |
commit | 09a275e8a4c2cea22bb67c7247fc892d5e73eb42 (patch) | |
tree | 802524ab25f48a82f9061a716ad462b6fb625ed2 /clang/test | |
parent | 402eca265f7162e26b8b74d18297fd76c9f100de (diff) | |
download | llvm-09a275e8a4c2cea22bb67c7247fc892d5e73eb42.zip llvm-09a275e8a4c2cea22bb67c7247fc892d5e73eb42.tar.gz llvm-09a275e8a4c2cea22bb67c7247fc892d5e73eb42.tar.bz2 |
[clang] Use internal linkage for c23 constexpr vars. (#97846)
See C23 std 6.2.2p3.
Fixes #97830
Diffstat (limited to 'clang/test')
-rw-r--r-- | clang/test/CodeGen/constexpr-c23-internal-linkage.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/clang/test/CodeGen/constexpr-c23-internal-linkage.c b/clang/test/CodeGen/constexpr-c23-internal-linkage.c new file mode 100644 index 0000000..1236062 --- /dev/null +++ b/clang/test/CodeGen/constexpr-c23-internal-linkage.c @@ -0,0 +1,18 @@ +/* + * RUN: %clang_cc1 -std=c23 -emit-llvm -o - %s | FileCheck %s + */ + +constexpr int var_int = 1; +constexpr char var_char = 'a'; +constexpr float var_float = 2.5; + +const int *p_i = &var_int; +const char *p_c = &var_char; +const float *p_f = &var_float; + +/* +CHECK: @var_int = internal constant i32 1{{.*}} +CHECK: @var_char = internal constant i8 97{{.*}} +CHECK: @var_float = internal constant float 2.5{{.*}} +*/ + |