Hi! ----
Below is a valgrind hit which likely indicate serious bugs. I don't have time to go into the details now so I'm shoving this as-is on the list. Steps to reproduce -- snip -- 1. Build ksh93 with some hacks to make life easier for "valgrind": $ (CCFLAGS='-g' CC='gcc -std=gnu99 -D_AST_std_malloc=1 -DSHOPT_SYSRC -D_map_libc=1 -g' ./bin/package ^Cke) 2>&1 | tee -a buildlog.log 2. Run valgrind: $ (SHELL=$PWD/arch/linux.i386-64/bin/ksh ; LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8 VMALLOC_OPTIONS="abort" valgrind --track-origins=yes --read-var-info=yes $SHELL src/cmd/ksh93/tests/arrays2.sh) -- snip -- Running the "arrays2.sh" test gives me this hit: -- snip -- ==7471== Warning: invalid file descriptor 32767 in syscall close() ==7471== Conditional jump or move depends on uninitialised value(s) ==7471== at 0x415569: array_getup (array.c:238) ==7471== by 0x416B78: array_putval (array.c:694) ==7471== by 0x4091D6: nv_putv (nvdisc.c:151) ==7471== by 0x4477C8: nv_putval (name.c:1603) ==7471== by 0x41A2C7: nv_setvec (array.c:1839) ==7471== by 0x443AF2: nv_setlist (name.c:451) ==7471== by 0x443DA2: nv_setlist (name.c:498) ==7471== by 0x468188: sh_exec (xec.c:1184) ==7471== by 0x46B95A: sh_exec (xec.c:2181) ==7471== by 0x44428D: nv_setlist (name.c:568) ==7471== by 0x468188: sh_exec (xec.c:1184) ==7471== by 0x466032: sh_eval (xec.c:592) ==7471== Uninitialised value was created by a stack allocation ==7471== at 0x4153CB: array_getup (array.c:196) -- snip -- This is the |nofree| variable in function |array_getup()| which remains uninitalised and may have a random value. ---- Bye, Roland -- __ . . __ (o.\ \/ /.o) [email protected] \__\/\/__/ MPEG specialist, C&&JAVA&&Sun&&Unix programmer /O /==\ O\ TEL +49 641 3992797 (;O/ \/ \O;) _______________________________________________ ast-developers mailing list [email protected] https://mailman.research.att.com/mailman/listinfo/ast-developers
