erichkeane added inline comments.

================
Comment at: clang/test/CodeGenCXX/no_auto_return_lambda.cpp:1
+// RUN: %clang_cc1 -emit-llvm -debug-info-kind=limited %s -o - | FileCheck %s
+
----------------
So this CodeGen test without a triple is a bit troublesome.  The one we've 
noticed that this fails on the 32 bit windows build:

```
FAIL: Clang :: CodeGenCXX/no_auto_return_lambda.cpp (41841 of 57667)
******************** TEST 'Clang :: CodeGenCXX/no_auto_return_lambda.cpp' 
FAILED ********************
Script:
--
: 'RUN: at line 1';   
d:\netbatch\build_comp02320_00\ics_top\builds\xmainoclx86win_prod\llvm\bin\clang.exe
 -cc1 -internal-isystem 
d:\netbatch\build_comp02320_00\ics_top\builds\xmainoclx86win_prod\llvm\lib\clang\15.0.0\include
 -nostdsysteminc -emit-llvm -debug-info-kind=limited 
D:\netbatch\build_comp02320_00\ics_top\llvm\clang\test\CodeGenCXX\no_auto_return_lambda.cpp
 -o - | 
d:\netbatch\build_comp02320_00\ics_top\builds\xmainoclx86win_prod\llvm\bin\filecheck.exe
 
D:\netbatch\build_comp02320_00\ics_top\llvm\clang\test\CodeGenCXX\no_auto_return_lambda.cpp
--
Exit Code: 1Command Output (stdout):
--
$ ":" "RUN: at line 1"
$ 
"d:\netbatch\build_comp02320_00\ics_top\builds\xmainoclx86win_prod\llvm\bin\clang.exe"
 "-cc1" "-internal-isystem" 
"d:\netbatch\build_comp02320_00\ics_top\builds\xmainoclx86win_prod\llvm\lib\clang\15.0.0\include"
 "-nostdsysteminc" "-emit-llvm" "-debug-info-kind=limited" 
"D:\netbatch\build_comp02320_00\ics_top\llvm\clang\test\CodeGenCXX\no_auto_return_lambda.cpp"
 "-o" "-"
$ 
"d:\netbatch\build_comp02320_00\ics_top\builds\xmainoclx86win_prod\llvm\bin\filecheck.exe"
 
"D:\netbatch\build_comp02320_00\ics_top\llvm\clang\test\CodeGenCXX\no_auto_return_lambda.cpp"
# command stderr:
D:\netbatch\build_comp02320_00\ics_top\llvm\clang\test\CodeGenCXX\no_auto_return_lambda.cpp:24:11:
 error: CHECK: expected string not found in input
// CHECK: ![[FUN_TYPE_LAMBDA]] = !DISubroutineType(types: 
![[TYPE_NODE_LAMBDA:[0-9]+]])
          ^
<stdin>:56:289: note: scanning from here
!17 = distinct !DISubprogram(name: "operator()", linkageName: 
"??R<lambda_0>@?0??g@@YAHXZ@QBE?A?<auto>@@XZ", scope: !13, file: !7, line: 9, 
type: !18, scopeLine: 9, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit 
| DISPFlagDefinition, unit: !0, declaration: !22, retainedNodes: !11)           
                                                                                
        ^
<stdin>:56:289: note: with "FUN_TYPE_LAMBDA" equal to "18"
!17 = distinct !DISubprogram(name: "operator()", linkageName: 
"??R<lambda_0>@?0??g@@YAHXZ@QBE?A?<auto>@@XZ", scope: !13, file: !7, line: 9, 
type: !18, scopeLine: 9, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit 
| DISPFlagDefinition, unit: !0, declaration: !22, retainedNodes: !11)           
                                                                                
        ^
<stdin>:57:1: note: possible intended match here
!18 = !DISubroutineType(cc: DW_CC_BORLAND_thiscall, types: !19)
^Input file: <stdin>
Check file: 
D:\netbatch\build_comp02320_00\ics_top\llvm\clang\test\CodeGenCXX\no_auto_return_lambda.cpp
-dump-input=help explains the following input dump.Input was:
<<<<<<
            .
            .
            .
           51: !12 = !DILocalVariable(name: "f", scope: !6, file: !7, line: 9, 
type: !13)
           52: !13 = distinct !DICompositeType(tag: DW_TAG_class_type, scope: 
!6, file: !7, line: 9, size: 8, flags: DIFlagTypePassByValue | 
DIFlagNonTrivial, elements: !11)
           53: !14 = !DILocation(line: 9, column: 8, scope: !6)
           54: !15 = !DILocation(line: 10, column: 10, scope: !6)
           55: !16 = !DILocation(line: 10, column: 3, scope: !6)
           56: !17 = distinct !DISubprogram(name: "operator()", linkageName: 
"??R<lambda_0>@?0??g@@YAHXZ@QBE?A?<auto>@@XZ", scope: !13, file: !7, line: 9, 
type: !18, scopeLine: 9, flags: DIFlagPrototyped, spFlags: DISPFlagLocalToUnit 
| DISPFlagDefinition, unit: !0, declaration: !22, retainedNodes: !11)
check:24'0                                                                      
                                                                                
                                                                                
                                                               X error: no 
match found
check:24'1                                                                      
                                                                                
                                                                                
                                                                 with 
"FUN_TYPE_LAMBDA" equal to "18"
           57: !18 = !DISubroutineType(cc: DW_CC_BORLAND_thiscall, types: !19)
check:24'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
check:24'2     ?                                                                
possible intended match
           58: !19 = !{!10, !20}
check:24'0     ~~~~~~~~~~~~~~~~~~
           59: !20 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !21, 
size: 32, flags: DIFlagArtificial | DIFlagObjectPointer)
check:24'0     
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           60: !21 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !13)
check:24'0     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           61: !22 = !DISubprogram(name: "operator()", scope: !13, file: !7, 
line: 9, type: !18, scopeLine: 9, flags: DIFlagPublic | DIFlagPrototyped, 
spFlags: DISPFlagLocalToUnit)
check:24'0     
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
           62: !23 = !DILocalVariable(name: "this", arg: 1, scope: !17, type: 
!24, flags: DIFlagArtificial | DIFlagObjectPointer)
check:24'0     
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
            .
            .
            .
>>>>>>error: command failed with exit status: 1--********************
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..1 warning(s) in tests
********************
Failed Tests (1): 
Clang :: CodeGenCXX/no_auto_return_lambda.cpp
```

See the failure on the check of line 23, which needs a calling-convention 
(since members are default-this-call in 32 bit windows).

I ALSO note that the line you match against "TYPE_NODE" ends up having 2 things 
on it when you are checking against '1'.


================
Comment at: clang/test/CodeGenCXX/no_auto_return_lambda.cpp:25
+// CHECK: ![[FUN_TYPE_LAMBDA]] = !DISubroutineType(types: 
![[TYPE_NODE_LAMBDA:[0-9]+]])
+// CHECK: ![[TYPE_NODE_LAMBDA]] = !{![[INT_TYPE:[0-9]+]], {{.*}}
----------------
Did you mean the above?

I note that defining the `INT_TYPE` variable here results in it accepting 
ANYTHING for `TYPE_NODE_LAMBDA`



Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D123319/new/

https://reviews.llvm.org/D123319

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to