[EMAIL PROTECTED] prev-gcc]$ cat foo.ii
# 1 "/net/gnu-13/export/gnu/src/gcc/gcc/gcc/testsuite/g++.dg/pch/pch.C"
# 1 "<built-in>"
# 1 "<command-line>"
# 1 "/net/gnu-13/export/gnu/src/gcc/gcc/gcc/testsuite/g++.dg/pch/pch.C"


int main()
{
  return 0;
}
[EMAIL PROTECTED] prev-gcc]$ valgrind --tool=memcheck ./cc1plus -fpreprocessed 
foo.ii
-quiet -dumpbase foo.ii -m32 -mtune=generic -auxbase pch -O2 -version -o foo.s
==6304== Memcheck, a memory error detector.
==6304== Copyright (C) 2002-2007, and GNU GPL'd, by Julian Seward et al.
==6304== Using LibVEX rev 1804, a library for dynamic binary translation.
==6304== Copyright (C) 2004-2007, and GNU GPL'd, by OpenWorks LLP.
==6304== Using valgrind-3.3.0, a dynamic binary instrumentation framework.
==6304== Copyright (C) 2000-2007, and GNU GPL'd, by Julian Seward et al.
==6304== For more details, rerun with: -v
==6304== 
GNU C++ (GCC) version 4.4.0 20080609 (experimental) [trunk revision 136589]
(x86_64-unknown-linux-gnu)
        compiled by GNU C version 4.4.0 20080609 (experimental) [trunk revision
136589], GMP version 4.2.2, MPFR version 2.3.0-p4.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 9e36edea0acfb287d81f6630c10d1047
==6304== Invalid read of size 1
==6304==    at 0x4A07B24: strlen (mc_replace_strmem.c:242)
==6304==    by 0x693EB2: output_file_directive (toplev.c:680)
==6304==    by 0x7AE7E8: x86_file_start (i386.c:23343)
==6304==    by 0x694DA4: toplev_main (toplev.c:1343)
==6304==    by 0x39D3C1E329: (below main) (in /lib64/libc-2.8.so)
==6304==  Address 0x4cb7d01 is 0 bytes after a block of size 65 alloc'd
==6304==    at 0x4A074D1: realloc (vg_replace_malloc.c:429)
==6304==    by 0xA0313C: xrealloc (xmalloc.c:179)
==6304==    by 0x9D22AC: cpp_interpret_string (charset.c:1392)
==6304==    by 0x9D2860: cpp_interpret_string_notranslate (charset.c:1416)
==6304==    by 0x9D624A: do_linemarker (directives.c:956)
==6304==    by 0x9D4BB4: _cpp_handle_directive (directives.c:483)
==6304==    by 0x9DCE6E: cpp_read_main_file (init.c:536)
==6304==    by 0x4D9947: c_common_post_options (c-opts.c:1174)
==6304==    by 0x694309: toplev_main (toplev.c:1660)
==6304==    by 0x39D3C1E329: (below main) (in /lib64/libc-2.8.so)
==6304== 
==6304== Invalid read of size 1
==6304==    at 0x693114: output_quoted_string (toplev.c:652)
==6304==    by 0x693F03: output_file_directive (toplev.c:695)
==6304==    by 0x7AE7E8: x86_file_start (i386.c:23343)
==6304==    by 0x694DA4: toplev_main (toplev.c:1343)
==6304==    by 0x39D3C1E329: (below main) (in /lib64/libc-2.8.so)
==6304==  Address 0x4cb7d01 is 0 bytes after a block of size 65 alloc'd
==6304==    at 0x4A074D1: realloc (vg_replace_malloc.c:429)
==6304==    by 0xA0313C: xrealloc (xmalloc.c:179)
==6304==    by 0x9D22AC: cpp_interpret_string (charset.c:1392)
==6304==    by 0x9D2860: cpp_interpret_string_notranslate (charset.c:1416)
==6304==    by 0x9D624A: do_linemarker (directives.c:956)
==6304==    by 0x9D4BB4: _cpp_handle_directive (directives.c:483)
==6304==    by 0x9DCE6E: cpp_read_main_file (init.c:536)
==6304==    by 0x4D9947: c_common_post_options (c-opts.c:1174)
==6304==    by 0x694309: toplev_main (toplev.c:1660)
==6304==    by 0x39D3C1E329: (below main) (in /lib64/libc-2.8.so)
==6304== 
==6304== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 4 from 1)
==6304== malloc/free: in use at exit: 448,374 bytes in 1,606 blocks.
==6304== malloc/free: 4,000 allocs, 2,394 frees, 2,176,191 bytes allocated.
==6304== For counts of detected errors, rerun with: -v
==6304== searching for pointers to 1,606 not-freed blocks.
==6304== checked 3,757,576 bytes.
==6304== 
==6304== LEAK SUMMARY:
==6304==    definitely lost: 8,832 bytes in 30 blocks.
==6304==      possibly lost: 0 bytes in 0 blocks.
==6304==    still reachable: 439,542 bytes in 1,576 blocks.
==6304==         suppressed: 0 bytes in 0 blocks.
==6304== Rerun with --leak-check=full to see details of leaked memory.
[EMAIL PROTECTED] prev-gcc]$


-- 
           Summary: Short buffer in libcpp
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: preprocessor
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: hjl dot tools at gmail dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36479

Reply via email to