[Bug gdb/12521] New: sizeof() wrong

carlo at alinoe dot com sourceware-bugzilla@sourceware.org
Sun Feb 27 02:25:00 GMT 2011


http://sourceware.org/bugzilla/show_bug.cgi?id=12521

           Summary: sizeof() wrong
           Product: gdb
           Version: 7.0
            Status: NEW
          Severity: normal
          Priority: P2
         Component: gdb
        AssignedTo: unassigned@sourceware.org
        ReportedBy: carlo@alinoe.com


I have a pure 64-bit machine (x86_64-linux-gnu),
uint64_t is unsigned long is 64 bit.

GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 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-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
(gdb) p/x -1UL
$1 = 0xffffffff
(gdb) p/x (unsigned long)-1
$2 = 0xffffffff
(gdb) p sizeof(unsigned long)
$3 = 4
(gdb) p/x -1ULL
$4 = 0xffffffffffffffff
(gdb) p/x (unsigned long long)-1
$5 = 0xffffffffffffffff
(gdb) p sizeof(unsigned long long)
$6 = 8


That is the exact output that you'd expect on a 32-bit machine!

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



More information about the Gdb-prs mailing list