Issue |
119979
|
Summary |
`Clang :: SemaCXX/msvc-pragma-function-no-builtin-attr.cpp` fails on 32-bit systems
|
Labels |
|
Assignees |
|
Reporter |
mgorny
|
The test added in #119719 is failing on 32-bit systems (e.g. x86):
```
FAIL: Clang :: SemaCXX/msvc-pragma-function-no-builtin-attr.cpp (18443 of 21238)
******************** TEST 'Clang :: SemaCXX/msvc-pragma-function-no-builtin-attr.cpp' FAILED ********************
Exit Code: 1
Command Output (stderr):
--
RUN: at line 1: /var/tmp/portage/llvm-core/clang-20.0.0.9999/work/x/y/clang-abi_x86_32.x86/bin/clang --driver-mode=cl -fms-compatibility -Xclang -ast-dump -fsyntax-only -- /var/tmp/portage/llvm-core/clang-20.0.0.9999/work/clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp | /usr/lib/llvm/20/bin/FileCheck /var/tmp/portage/llvm-core/clang-20.0.0.9999/work/clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp
+ /var/tmp/portage/llvm-core/clang-20.0.0.9999/work/x/y/clang-abi_x86_32.x86/bin/clang --driver-mode=cl -fms-compatibility -Xclang -ast-dump -fsyntax-only -- /var/tmp/portage/llvm-core/clang-20.0.0.9999/work/clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp
+ /usr/lib/llvm/20/bin/FileCheck /var/tmp/portage/llvm-core/clang-20.0.0.9999/work/clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp
/var/tmp/portage/llvm-core/clang-20.0.0.9999/work/clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp:21:12: error: CHECK: expected string not found in input
// CHECK: CXXMethodDecl {{.*}} foo 'int ()' delete
^
<stdin>:34:61: note: scanning from here
| `-NoBuiltinAttr 0x57422580 <<invalid sloc>> Implicit fabsf
^
<stdin>:44:4: note: possible intended match here
| |-CXXMethodDecl 0x57470738 <line:20:5, col:22> col:9 foo 'int () __attribute__((thiscall))' delete implicit-inline
^
Input file: <stdin>
Check file: /var/tmp/portage/llvm-core/clang-20.0.0.9999/work/clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp
-dump-input=help explains the following input dump.
Input was:
<<<<<<
1: TranslationUnitDecl 0x57421708 <<invalid sloc>> <invalid sloc>
2: |-CXXRecordDecl 0x57421b60 <<invalid sloc>> <invalid sloc> implicit struct _GUID
3: | `-TypeVisibilityAttr 0x57421be0 <<invalid sloc>> Implicit Default
4: |-TypedefDecl 0x57421ec0 <<invalid sloc>> <invalid sloc> implicit __NSConstantString '__NSConstantString_tag'
5: | `-RecordType 0x57421ce0 '__NSConstantString_tag'
6: | `-CXXRecord 0x57421c88 '__NSConstantString_tag'
7: |-CXXRecordDecl 0x57421ef0 <<invalid sloc>> <invalid sloc> implicit class type_info
8: | `-TypeVisibilityAttr 0x57421f70 <<invalid sloc>> Implicit Default
9: |-TypedefDecl 0x57421fc8 <<invalid sloc>> <invalid sloc> implicit size_t 'unsigned int'
10: | `-BuiltinType 0x574217f0 'unsigned int'
11: |-TypedefDecl 0x57421c58 <<invalid sloc>> <invalid sloc> implicit __builtin_va_list 'char *'
12: | `-PointerType 0x57421c20 'char *'
13: | `-BuiltinType 0x57421770 'char'
14: |-LinkageSpecDecl 0x57422010 </var/tmp/portage/llvm-core/clang-20.0.0.9999/work/clang/test/SemaCXX/msvc-pragma-function-no-builtin-attr.cpp:3:1, col:51> col:8 C
15: | `-FunctionDecl 0x57422140 <col:12, col:51> col:35 fabsf 'float (float) __attribute__((cdecl))':'float (float)' inline
16: | |-ParmVarDecl 0x57422060 <col:43, col:49> col:49 _X 'float'
17: | |-BuiltinAttr 0x57422208 <<invalid sloc>> Implicit 556
18: | |-NoThrowAttr 0x57422248 <col:35> Implicit
19: | `-ConstAttr 0x57422268 <col:35> Implicit
20: |-FunctionDecl 0x57422350 prev 0x57422140 <line:6:3, line:9:1> line:6:26 fabsf 'float (float) __attribute__((cdecl))':'float (float)' inline
21: | |-ParmVarDecl 0x574222a0 <col:34, col:40> col:40 _X 'float'
22: | |-CompoundStmt 0x574224bc <line:7:1, line:9:1>
23: | | `-ReturnStmt 0x574224b0 <line:8:5, col:12>
24: | | `-ImplicitCastExpr 0x574224a0 <col:12> 'float' <IntegralToFloating>
25: | | `-IntegerLiteral 0x57422480 <col:12> 'int' 0
26: | |-BuiltinAttr 0x574223e0 <<invalid sloc>> Inherited Implicit 556
27: | |-NoThrowAttr 0x57422400 <line:3:35> Inherited Implicit
28: | |-ConstAttr 0x57422420 <col:35> Inherited Implicit
29: | `-NoBuiltinAttr 0x57422440 <<invalid sloc>> Implicit fabsf
30: |-FunctionDecl 0x57422518 <line:13:1, line:15:1> line:13:5 bar 'int ()'
31: | |-CompoundStmt 0x57422608 <col:11, line:15:1>
32: | | `-ReturnStmt 0x574225fc <line:14:3, col:10>
33: | | `-IntegerLiteral 0x574225e0 <col:10> 'int' 0
34: | `-NoBuiltinAttr 0x57422580 <<invalid sloc>> Implicit fabsf
check:21'0 X error: no match found
35: |-CXXRecordDecl 0x57422620 <line:19:1, line:26:1> line:19:8 struct A definition
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
36: | |-DefinitionData pass_in_registers empty aggregate standard_layout trivially_copyable pod trivial literal has_user_dec
lared_ctor has_constexpr_non_copy_move_ctor can_const_default_init
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
37: | | |-DefaultConstructor exists trivial constexpr defaulted_is_constexpr
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
38: | | |-CopyConstructor simple trivial has_const_param needs_implicit implicit_has_const_param
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
39: | | |-MoveConstructor exists simple trivial needs_implicit
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
40: | | |-CopyAssignment simple trivial has_const_param needs_implicit implicit_has_const_param
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41: | | |-MoveAssignment exists simple trivial needs_implicit
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
42: | | `-Destructor simple irrelevant trivial needs_implicit
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
43: | |-CXXRecordDecl 0x57470670 <col:1, col:8> col:8 implicit referenced struct A
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44: | |-CXXMethodDecl 0x57470738 <line:20:5, col:22> col:9 foo 'int () __attribute__((thiscall))' delete implicit-inline
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:21'1 ? po
ssible intended match
45: | `-CXXConstructorDecl 0x574707f0 <line:23:5, col:17> col:5 constexpr A 'void () __attribute__((thiscall))' default trivial noexcept-unevaluated 0x574707f0 implicit-inline
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
46: `-FunctionDecl 0x574708c0 <line:28:1, line:30:1> line:28:5 main 'int ()'
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
47: |-CompoundStmt 0x574709d8 <col:12, line:30:1>
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
48: | `-ReturnStmt 0x574709cc <line:29:5, col:12>
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
49: | `-IntegerLiteral 0x574709b0 <col:12> 'int' 0
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
50: `-NoBuiltinAttr 0x57470950 <<invalid sloc>> Implicit fabsf
check:21'0 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>>>>>>
--
********************
```
Reproduced with c3276a96d909233b836e839a23a7ad510fae407a. I've used `FILECHECK_OPTS='--dump-input-context 100'` to get the full context. I've also confirmed that 64-bit build on the same system passes.
CC @VScigolevs
_______________________________________________
llvm-bugs mailing list
llvm-bugs@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs