r225000 - Reapply "DebugInfo: Generalize debug info location handling"

Aaron Ballman aaron at aaronballman.com
Wed Dec 31 13:09:48 PST 2014


On Wed, Dec 31, 2014 at 4:04 PM, Nico Weber <thakis at chromium.org> wrote:
> Probably just needs a triple?

There are two run lines, one with a triple and one without a triple.
The one without a triple is the one that is failing, but the *only*
difference between RUN lines is the presence of a triple. If David
isn't able to fix this up, I'll find the magic XFAIL tag for MSVC and
apply that, but something still needs to be looked at.

~Aaron

>
> On Dec 31, 2014 11:25 AM, "Aaron Ballman" <aaron at aaronballman.com> wrote:
>>
>> On Wed, Dec 31, 2014 at 9:36 AM, İsmail Dönmez <ismail at donmez.ws> wrote:
>> > Hi,
>> >
>> > On Tue, Dec 30, 2014 at 9:39 PM, David Blaikie <dblaikie at gmail.com>
>> > wrote:
>> >>
>> >> +// CHECK-LABEL: define
>> >> +__complex double f11() {
>> >> +  __complex double f;
>> >> +// CHECK: store {{.*}} !dbg [[DBG_F11:!.*]]
>> >> +#line 1200
>> >> +  return f;
>> >> +}
>> >
>> >
>> > This seems to fail on Windows (MSVC):
>> >
>> > tools\clang\test\CodeGenCXX\debug-info-line.cpp:1104:1: error: cannot
>> > mangle
>> > this complex number type yet
>> > __complex double f11() {
>> > ^~~~~~~~~~~~~~~~~~~~~~~~
>>
>> I am seeing this test fail on Windows with MSVC as well.
>>
>> 78>  FAIL: Clang :: CodeGenCXX/debug-info-line.cpp (2152 of 20051)
>> 78>  ******************** TEST 'Clang ::
>> CodeGenCXX/debug-info-line.cpp' FAILED ********************
>> 78>  Script:
>> 78>  --
>> 78>  E:/llvm/2013/Debug/bin/clang.EXE -cc1 -internal-isystem
>> E:\llvm\2013\Debug\bin\..\lib\clang\3.6.0\include -nostdsysteminc -g
>> -std=c++11 -S -emit-llvm
>> E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp -o - |
>> E:/llvm/2013/Debug/bin\FileCheck.EXE
>> E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp
>> 78>  E:/llvm/2013/Debug/bin/clang.EXE -cc1 -internal-isystem
>> E:\llvm\2013\Debug\bin\..\lib\clang\3.6.0\include -nostdsysteminc
>> -triple i686-linux-gnu -g -std=c++11 -S -emit-llvm
>> E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp -o - |
>> E:/llvm/2013/Debug/bin\FileCheck.EXE
>> E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp
>> 78>  --
>> 78>  Exit Code: 2
>> 78>
>> 78>  Command Output (stdout):
>> 78>  --
>> 78>  Command 0: "E:/llvm/2013/Debug/bin/clang.EXE" "-cc1"
>> "-internal-isystem"
>> "E:\llvm\2013\Debug\bin\..\lib\clang\3.6.0\include" "-nostdsysteminc"
>> "-g" "-std=c++11" "-S" "-emit-llvm"
>> "E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp" "-o"
>> "-"
>> 78>  Command 0 Result: 1
>> 78>  Command 0 Output:
>> 78>
>> 78>
>> 78>  Command 0 Stderr:
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:706:12:
>> warning: empty parentheses interpreted as a function declaration
>> 78>
>> 78>    int *src1();
>> 78>
>> 78>             ^~
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:706:12:
>> note: replace parentheses with an initializer to declare a variable
>> 78>
>> 78>    int *src1();
>> 78>
>> 78>             ^~
>> 78>
>> 78>              = nullptr
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:707:11:
>> warning: empty parentheses interpreted as a function declaration
>> 78>
>> 78>    int src2();
>> 78>
>> 78>            ^~
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:707:11:
>> note: replace parentheses with an initializer to declare a variable
>> 78>
>> 78>    int src2();
>> 78>
>> 78>            ^~
>> 78>
>> 78>             = 0
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:807:11:
>> warning: empty parentheses interpreted as a function declaration
>> 78>
>> 78>    int src2();
>> 78>
>> 78>            ^~
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:807:11:
>> note: replace parentheses with an initializer to declare a variable
>> 78>
>> 78>    int src2();
>> 78>
>> 78>            ^~
>> 78>
>> 78>             = 0
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:907:11:
>> warning: empty parentheses interpreted as a function declaration
>> 78>
>> 78>    int src2();
>> 78>
>> 78>            ^~
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:907:11:
>> note: replace parentheses with an initializer to declare a variable
>> 78>
>> 78>    int src2();
>> 78>
>> 78>            ^~
>> 78>
>> 78>             = 0
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:1008:17:
>> warning: empty parentheses interpreted as a function declaration
>> 78>
>> 78>    void *void_src();
>> 78>
>> 78>                  ^~
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:1008:17:
>> note: replace parentheses with an initializer to declare a variable
>> 78>
>> 78>    void *void_src();
>> 78>
>> 78>                  ^~
>> 78>
>> 78>                   = nullptr
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:1104:1:
>> error: cannot mangle this complex number type yet
>> 78>
>> 78>  __complex double f11() {
>> 78>
>> 78>  ^~~~~~~~~~~~~~~~~~~~~~~~
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:1205:12:
>> warning: empty parentheses interpreted as a function declaration
>> 78>
>> 78>    int f12_1();
>> 78>
>> 78>             ^~
>> 78>
>> 78>  E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp:1205:12:
>> note: replace parentheses with an initializer to declare a variable
>> 78>
>> 78>    int f12_1();
>> 78>
>> 78>             ^~
>> 78>
>> 78>              = 0
>> 78>
>> 78>  6 warnings and 1 error generated.
>> 78>
>> 78>
>> 78>
>> 78>  Command 1: "E:/llvm/2013/Debug/bin\FileCheck.EXE"
>> "E:\llvm\llvm\tools\clang\test\CodeGenCXX\debug-info-line.cpp"
>> 78>  Command 1 Result: 2
>> 78>  Command 1 Output:
>> 78>
>> 78>
>> 78>  Command 1 Stderr:
>> 78>CUSTOMBUILD : FileCheck error : '-' is empty.
>> 78>
>>
>> ~Aaron
>>
>> _______________________________________________
>> cfe-commits mailing list
>> cfe-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits




More information about the cfe-commits mailing list