On Mon, Feb 18, 2019 at 7:07 PM John Reiser <jrei...@bitwagon.com> wrote:

> On 2/17/19, Peng Yu wrote:
> > $ flex -o main.l.c main.l
> > $ clang -I. -DGC_DEBUG -Wall -pedantic -g -c -o main.l.o main.l.c #
> > rapidstring.h is in .
> > $ clang main.l.o -lgc -lfl -o main.l.exe
> > $ dsymutil main.l.exe
>
> What is 'dsymutil', where did you get it, what version?
> What is the hardware architecture?


That is just the command on Mac to generate the debug symbols.

>
>
> The execution recipe works for me on Fedora 28 using
> valgrind-3.14.0-7.fc28.x86_64.
> I omitted dsymutil.  Why is it essential for you?


It is not essential.

>
>
> $ ldd main.l.exe
>         linux-vdso.so.1 (0x00007fffa7d9f000)
>         libgc.so.1 => /lib64/libgc.so.1 (0x00007f255ef81000)
>         libc.so.6 => /lib64/libc.so.6 (0x00007f255ebc2000)
>         libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f255e9a3000)
>         libdl.so.2 => /lib64/libdl.so.2 (0x00007f255e79f000)
>         libatomic_ops.so.1 => /lib64/libatomic_ops.so.1
> (0x00007f255e59c000)
>         libgcc_s.so.1 => /lib64/libgcc_s.so.1 (0x00007f255e384000)
>         /lib64/ld-linux-x86-64.so.2 (0x00007f255f2de000)
>
> $ rpm -qf /lib64/libgc.so.1
> gc-7.6.4-3.fc28.x86_64
> $ rpm -qf /usr/bin/flex
> flex-2.6.1-7.fc28.x86_64
> $ rpm -q clang
> clang-6.0.1-2.fc28.x86_64



Why there is no segmentation fault in your run?

>
>
> $ valgrind ./main.l.exe <input.txt
> ==23299== Memcheck, a memory error detector
> ==23299== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
> ==23299== Using Valgrind-3.14.0 and LibVEX; rerun with -h for copyright
> info
> ==23299== Command: ./main.l.exe
> ==23299==
> ==23299== Conditional jump or move depends on uninitialised value(s)
> ==23299==    at 0x4E4D166: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Conditional jump or move depends on uninitialised value(s)
> ==23299==    at 0x4E4D16B: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E4CF57: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Conditional jump or move depends on uninitialised value(s)
> ==23299==    at 0x4E4CF66: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E4CF9A: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E491AA: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E446F6: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Conditional jump or move depends on uninitialised value(s)
> ==23299==    at 0x4E491B9: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E446F6: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E491E7: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E446F6: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E44733: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E49D21: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4E786: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Conditional jump or move depends on uninitialised value(s)
> ==23299==    at 0x4E4D166: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Conditional jump or move depends on uninitialised value(s)
> ==23299==    at 0x4E4D16B: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E4CF57: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Conditional jump or move depends on uninitialised value(s)
> ==23299==    at 0x4E4CF66: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E4CF9A: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E491AA: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E446F6: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Conditional jump or move depends on uninitialised value(s)
> ==23299==    at 0x4E491B9: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E446F6: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E491E7: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E446F6: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> ==23299== Use of uninitialised value of size 8
> ==23299==    at 0x4E44733: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D171: GC_push_all_eager (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E57F2C: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E4D896: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E42C44: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E43348: ??? (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x4E5043B: GC_init (in /usr/lib64/libgc.so.1.3.2)
> ==23299==    by 0x403203: main (main.l:34)
> ==23299==
> tok = 1000, yylval= 1
> tok = 1001, yylval= a
> tok = 1000, yylval= 23
> tok = 1001, yylval= b
> tok = 1000, yylval= 456
> tok = 1001, yylval= c
> ==23299==
> ==23299== HEAP SUMMARY:
> ==23299==     in use at exit: 864 bytes in 3 blocks
> ==23299==   total heap usage: 14 allocs, 11 frees, 24,562 bytes allocated
> ==23299==
> ==23299== LEAK SUMMARY:
> ==23299==    definitely lost: 0 bytes in 0 blocks
> ==23299==    indirectly lost: 0 bytes in 0 blocks
> ==23299==      possibly lost: 864 bytes in 3 blocks
> ==23299==    still reachable: 0 bytes in 0 blocks
> ==23299==         suppressed: 0 bytes in 0 blocks
> ==23299== Rerun with --leak-check=full to see details of leaked memory
> ==23299==
> ==23299== For counts of detected and suppressed errors, rerun with: -v
> ==23299== Use --track-origins=yes to see where uninitialised values come
> from
> ==23299== ERROR SUMMARY: 390 errors from 18 contexts (suppressed: 0 from 0)
> $
>
>
> _______________________________________________
> Valgrind-users mailing list
> Valgrind-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/valgrind-users
>
-- 
Regards,
Peng
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to