[clang] [llvm] [Clang] Fix assertion failure when passing wide string literal to __builtin_nanf (PR #205452)
Aaron Ballman via llvm-commits
llvm-commits at lists.llvm.org
Tue Jun 30 08:14:48 PDT 2026
AaronBallman wrote:
Precommit CI found relevant failures:
```
FAIL: Clang :: Sema/builtin-nan-wide-string.c (24769 of 24994)
******************** TEST 'Clang :: Sema/builtin-nan-wide-string.c' FAILED ********************
Exit Code: 1
Command Output (stdout):
--
# RUN: at line 1
c:\_work\llvm-project\llvm-project\build\bin\clang.exe -cc1 -internal-isystem C:\_work\llvm-project\llvm-project\build\lib\clang\23\include -nostdsysteminc -fsyntax-only -verify=c -x c C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c
# executed command: 'c:\_work\llvm-project\llvm-project\build\bin\clang.exe' -cc1 -internal-isystem 'C:\_work\llvm-project\llvm-project\build\lib\clang\23\include' -nostdsysteminc -fsyntax-only -verify=c -x c 'C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c'
# .---command stderr------------
# | error: 'c-error' diagnostics seen but not expected:
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 12: incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 12: initializer element is not a compile-time constant
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 16: incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 16: initializer element is not a compile-time constant
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 20: incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 20: initializer element is not a compile-time constant
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 24: incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 24: initializer element is not a compile-time constant
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 28: incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 28: initializer element is not a compile-time constant
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 32: incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 32: initializer element is not a compile-time constant
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 36: incompatible pointer types passing 'unsigned int[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 36: initializer element is not a compile-time constant
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 40: incompatible pointer types passing 'unsigned int[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 40: initializer element is not a compile-time constant
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 44: incompatible pointer types passing 'unsigned int[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 44: initializer element is not a compile-time constant
# | error: 'c-warning' diagnostics expected but not seen:
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 12 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:13): incompatible pointer types passing 'int[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 16 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:17): incompatible pointer types passing 'int[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 20 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:21): incompatible pointer types passing 'int[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 24 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:25): incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 28 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:29): incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 32 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:33): incompatible pointer types passing 'unsigned short[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 36 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:37): incompatible pointer types passing 'unsigned int[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 40 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:41): incompatible pointer types passing 'unsigned int[1]' to parameter of type 'const char *'
# | File C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c Line 44 (directive at C:\_work\llvm-project\llvm-project\clang\test\Sema\builtin-nan-wide-string.c:45): incompatible pointer types passing 'unsigned int[1]' to parameter of type 'const char *'
# | 27 errors generated.
# `-----------------------------
# error: command failed with exit status: 1
--
********************
```
https://github.com/llvm/llvm-project/pull/205452
More information about the llvm-commits
mailing list