==20114== Memcheck, a.k.a. Valgrind, a memory error detector for x86-linux. ==20114== Copyright (C) 2002, and GNU GPL'd, by Julian Seward. ==20114== Using valgrind-1.9.6, a program instrumentation system for x86-linux. ==20114== Copyright (C) 2000-2002, and GNU GPL'd, by Julian Seward. ==20114== ==20114== My PID = 20114, parent PID = 5355. Prog and args are: ==20114== ./parse ==20114== (a+b)*3/(2+(C-D*(2/X))) ==20114== Estimated CPU clock rate is 1595 MHz ==20114== For more details, rerun with: -v ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x804865A: Parse (parse.c:52) ==20114== by 0x8048548: main (parse.c:31) ==20114== by 0x40232DB3: __libc_start_main (in /lib/libc-2.3.1.so) ==20114== Address 0x40F500E5 is 0 bytes after a block of size 21 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x8048548: main (parse.c:31) ==20114== by 0x40232DB3: __libc_start_main (in /lib/libc-2.3.1.so) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80485FD: Parse (parse.c:48) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== Address 0x40F501B5 is 0 bytes after a block of size 5 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048785: Parse (parse.c:93) ==20114== by 0x8048548: main (parse.c:31) ==20114== by 0x40232DB3: __libc_start_main (in /lib/libc-2.3.1.so) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x8048615: Parse (parse.c:50) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== Address 0x40F501B5 is 0 bytes after a block of size 5 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048785: Parse (parse.c:93) ==20114== by 0x8048548: main (parse.c:31) ==20114== by 0x40232DB3: __libc_start_main (in /lib/libc-2.3.1.so) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x804862E: Parse (parse.c:51) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== Address 0x40F501B5 is 0 bytes after a block of size 5 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048785: Parse (parse.c:93) ==20114== by 0x8048548: main (parse.c:31) ==20114== by 0x40232DB3: __libc_start_main (in /lib/libc-2.3.1.so) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x804865A: Parse (parse.c:52) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== Address 0x40F501EB is 0 bytes after a block of size 3 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80486EA: Parse (parse.c:79) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== Address 0x40F501EB is 0 bytes after a block of size 3 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80486EA: Parse (parse.c:79) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== Address 0x40F502B5 is 0 bytes after a block of size 1 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048785: Parse (parse.c:93) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80487CB: Parse (parse.c:96) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== Address 0x40F501EB is 0 bytes after a block of size 3 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80487ED: Parse (parse.c:98) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== Address 0x40F501EB is 0 bytes after a block of size 3 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40295845: strncpy (in /lib/libc-2.3.1.so) ==20114== by 0x8048816: Parse (parse.c:98) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== Address 0x40F501EB is 0 bytes after a block of size 3 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80486EA: Parse (parse.c:79) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== Address 0x40F503F9 is 0 bytes after a block of size 1 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048785: Parse (parse.c:93) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x804865A: Parse (parse.c:52) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== Address 0x40F50479 is 0 bytes after a block of size 13 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80486EA: Parse (parse.c:79) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== Address 0x40F50479 is 0 bytes after a block of size 13 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80487CB: Parse (parse.c:96) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== Address 0x40F50479 is 0 bytes after a block of size 13 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162033: strlen (vg_clientfuncs.c:439) ==20114== by 0x80487ED: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== Address 0x40F50479 is 0 bytes after a block of size 13 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40295832: strncpy (in /lib/libc-2.3.1.so) ==20114== by 0x8048816: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== Address 0x40F50479 is 0 bytes after a block of size 13 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40295845: strncpy (in /lib/libc-2.3.1.so) ==20114== by 0x8048816: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== Address 0x40F507FB is 0 bytes after a block of size 3 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048620: Parse (parse.c:50) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== by 0x804882C: Parse (parse.c:98) ==20114== ==20114== Invalid write of size 1 ==20114== at 0x40162058: strcpy (vg_clientfuncs.c:447) ==20114== by 0x804894F: ToPrefix (parse.c:145) ==20114== by 0x8048998: ToPrefix (parse.c:150) ==20114== by 0x8048553: main (parse.c:32) ==20114== Address 0x40F50964 is 0 bytes after a block of size 4 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048937: ToPrefix (parse.c:144) ==20114== by 0x8048998: ToPrefix (parse.c:150) ==20114== by 0x8048553: main (parse.c:32) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162015: strcat (vg_clientfuncs.c:431) ==20114== by 0x8048AE1: Concat (parse.c:187) ==20114== by 0x80489EF: ToPrefix (parse.c:158) ==20114== by 0x8048998: ToPrefix (parse.c:150) ==20114== Address 0x40F502B5 is 0 bytes after a block of size 1 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048785: Parse (parse.c:93) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid write of size 1 ==20114== at 0x40162058: strcpy (vg_clientfuncs.c:447) ==20114== by 0x804894F: ToPrefix (parse.c:145) ==20114== by 0x80489BB: ToPrefix (parse.c:152) ==20114== by 0x80489BB: ToPrefix (parse.c:152) ==20114== Address 0x40F509CC is 0 bytes after a block of size 4 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048937: ToPrefix (parse.c:144) ==20114== by 0x80489BB: ToPrefix (parse.c:152) ==20114== by 0x80489BB: ToPrefix (parse.c:152) ==20114== ==20114== Invalid write of size 1 ==20114== at 0x40162058: strcpy (vg_clientfuncs.c:447) ==20114== by 0x8048A27: ToPostfix (parse.c:168) ==20114== by 0x8048A51: ToPostfix (parse.c:171) ==20114== by 0x804855E: main (parse.c:33) ==20114== Address 0x40F50AD0 is 0 bytes after a block of size 4 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048A0F: ToPostfix (parse.c:167) ==20114== by 0x8048A51: ToPostfix (parse.c:171) ==20114== by 0x804855E: main (parse.c:33) ==20114== ==20114== Invalid read of size 1 ==20114== at 0x40162015: strcat (vg_clientfuncs.c:431) ==20114== by 0x8048AE1: Concat (parse.c:187) ==20114== by 0x8048AC7: ToPostfix (parse.c:181) ==20114== by 0x8048A51: ToPostfix (parse.c:171) ==20114== Address 0x40F502B5 is 0 bytes after a block of size 1 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048785: Parse (parse.c:93) ==20114== by 0x80487C0: Parse (parse.c:95) ==20114== by 0x8048548: main (parse.c:31) ==20114== ==20114== Invalid write of size 1 ==20114== at 0x40162058: strcpy (vg_clientfuncs.c:447) ==20114== by 0x8048A27: ToPostfix (parse.c:168) ==20114== by 0x8048A74: ToPostfix (parse.c:173) ==20114== by 0x8048A74: ToPostfix (parse.c:173) ==20114== Address 0x40F50B38 is 0 bytes after a block of size 4 alloc'd ==20114== at 0x40161739: malloc (vg_clientfuncs.c:103) ==20114== by 0x8048A0F: ToPostfix (parse.c:167) ==20114== by 0x8048A74: ToPostfix (parse.c:173) ==20114== by 0x8048A74: ToPostfix (parse.c:173) ==20114== ==20114== ERROR SUMMARY: 146 errors from 23 contexts (suppressed: 0 from 0) ==20114== malloc/free: in use at exit: 0 bytes in 0 blocks. ==20114== malloc/free: 50 allocs, 50 frees, 16984 bytes allocated. ==20114== For counts of detected errors, rerun with: -v ==20114== No malloc'd blocks -- no leaks are possible.