Bug 84951 - UBSAN: libiberty/d-demangle.c:209:14: runtime error: signed integer overflow: 922337203685477581 * 10 cannot be represented in type 'long int'
Summary: UBSAN: libiberty/d-demangle.c:209:14: runtime error: signed integer overflow:...
Status: UNCONFIRMED
Alias: None
Product: gcc
Classification: Unclassified
Component: demangler (show other bugs)
Version: unknown
: P3 normal
Target Milestone: ---
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks: ubsan
  Show dependency treegraph
 
Reported: 2018-03-19 12:33 UTC by Martin Liška
Modified: 2018-03-19 12:33 UTC (History)
0 users

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Liška 2018-03-19 12:33:44 UTC
Following causes trouble:

$ cat /tmp/todo2
#
--format=dlang
_D9223372036854775817
_D9223372036854775817
$ ./libiberty/testsuite/test-demangle < /tmp/todo2
../../libiberty/d-demangle.c:209:14: runtime error: signed integer overflow: 922337203685477581 * 10 cannot be represented in type 'long int'
    #0 0x457e1f in dlang_number ../../libiberty/d-demangle.c:209
    #1 0x45af90 in dlang_identifier ../../libiberty/d-demangle.c:788
    #2 0x45c43c in dlang_parse_qualified ../../libiberty/d-demangle.c:1437
    #3 0x45cc6e in dlang_parse_mangle ../../libiberty/d-demangle.c:1354
    #4 0x45d361 in dlang_demangle ../../libiberty/d-demangle.c:1633
    #5 0x40cce1 in cplus_demangle ../../libiberty/cplus-dem.c:913
    #6 0x404a2c in main ../../../libiberty/testsuite/test-demangle.c:317
    #7 0x7ffff707ca86 in __libc_start_main (/lib64/libc.so.6+0x21a86)
    #8 0x405269 in _start (/home/marxin/Programming/gcc/objdir3/libiberty/testsuite/test-demangle+0x405269)