[LLVMbugs] [Bug 3223] New: Debug information gives variables the wrong types

bugzilla-daemon at cs.uiuc.edu bugzilla-daemon at cs.uiuc.edu
Tue Dec 16 14:23:55 PST 2008


http://llvm.org/bugs/show_bug.cgi?id=3223

           Summary: Debug information gives variables the wrong types
           Product: tools
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: llvm-gcc
        AssignedTo: unassignedbugs at nondot.org
        ReportedBy: jyasskin at google.com
                CC: llvmbugs at cs.uiuc.edu


Created an attachment (id=2308)
 --> (http://llvm.org/bugs/attachment.cgi?id=2308)
Sample program showing incorrect debug information

With llvm-gcc checked out at r60958, gdb gives the wrong types to variables.
The 2.4 release did not have this problem (although it did have a different
problem with arrays).

$ ~/opensource/llvm-gcc/trunk/install/bin/llvm-gcc -g -o bad_types bad_types.c 
$ gdb bad_types
GNU gdb 6.8-gg11
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux"...
(gdb) b main
Breakpoint 1 at 0x400438: file bad_types.c, line 2.
(gdb) run
Starting program: /home/jyasskin/tmp/bad_types 

Breakpoint 1, main () at bad_types.c:2
2         char* ptr = "Hello";
(gdb) n
3         int i = 2;
(gdb) n
4         int arr[] = {1,2,3,4};
(gdb) n
5       }
(gdb) p ptr
$1 = (void *) 0x400570
(gdb) p i
$2 = {2, 1, 2, 3}
(gdb) p arr
$3 = {1, 2, 3, 4}
(gdb) 


If 'i' is the last variable, it correctly gets printed as an int rather than an
array.  The somewhat annoying workaround is to cast things to the right types
before printing them.


-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list