Current commit has a memory corruption. Not sure what yet, behaves differently for dylib and static prog. In "test/regress/rt/darray-01.flx", with some debugging:
[FLX_DEBUG_COLLECTIONS] Collection debug enabled [FLX_DEBUG_DRIVER] Driver debug enabled [FLX_FINALISE] Finalisation Disabled [FLX_GC_FREQ] call gc every 1000 iterations [FLX_MIN_MEM] call gc only if more than 10 Meg heap used [FLX_MAX_MEM] terminate if more than 18446744073709 Meg heap used [FLX_FREE_FACTOR] reset gc trigger 1.10 times heap used after collection [FLX_ALLOW_COLLECTION_ANYWHERE] True Compiled by g++ Stack pointer = 0x7fff5fbff640, frame=0x7fff5fbff7d0, return=0x100000b74 flx_argv[0]->test/regress/rt/darray-01.dylib INITIALISING THREAD CONTROL OBJECT flx_run driver begins test/regress/rt/darray-01.dylib Adding thread 7fff70665be0 base 0x7fff5fbff5e8, count=1 Malloc 88 bytes, address = 0x100100510 Allocated 0x100100510, shape=0x1000c0260 = new thread_frame_t Malloc 224 bytes, address = 0x1001005c0 Allocated 0x1001005c0, shape=0x1000c02a0 = new _init_ loaded library test/regress/rt/darray-01.dylib at 0x100100410 thread frame at 0x100100510 initial continuation at 0x1001005c0 main continuation at 0x0 Malloc 8 bytes, address = 0x1001006e0 Allocated 0x1001006e0, shape=0x10000e420 = new fthread_t Process active ..Before running: Sync state is Illegal fstate_t/Next fthread pos create empty array length 20 Malloc 80 bytes, address = 0x100100780 Allocated 0x100100780, shape=0x1000c01e0 = new int Get count of 0x100100780 Count slot at address 0x100100740 Count of 0x100100780 is 20 Set used of 0x100100780 to 0 set_used: No recorded usage! Creating store for data Slot for 0x100100780 usage is address 0x100100760 Get count of 0x100100780 Count slot at address 0x100100740 Count of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100760 Used of 0x100100780 is 0 Array at 0x100100780, used = 0, max=20 Get count of 0x100100780 Count slot at address 0x100100740 Count of 0x100100780 is 20 Set used of 0x100100780 to 20 Slot for 0x100100780 usage is address 0x100100760 Get used of 0x100100780 Used slot at address 0x100100760 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100760 Used of 0x100100780 is 20 Make varray size 20 used 20 from function Get used of 0x100100780 Used slot at address 0x100100760 Used of 0x100100780 is 20 create empty array length 20 Malloc 80 bytes, address = 0x1001009a0 Allocated 0x1001009a0, shape=0x1000c01e0 = new int Get count of 0x1001009a0 Count slot at address 0x100100710 Count of 0x1001009a0 is 20 Set used of 0x1001009a0 to 0 set_used: No recorded usage! Creating store for data Slot for 0x1001009a0 usage is address 0x100100890 Get count of 0x1001009a0 Count slot at address 0x100100710 Count of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 0 Array at 0x1001009a0, used = 0, max=20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Constructed varray of 0 used elements size 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get used of 0x100100780 Used slot at address 0x100100888 Used of 0x100100780 is 20 Get count of 0x1001009a0 Count slot at address 0x100100710 Count of 0x1001009a0 is 20 Set used of 0x1001009a0 to 20 Slot for 0x1001009a0 usage is address 0x100100890 Maybe collect? Malloc 16 bytes, address = 0x1001007d0 Allocated 0x1001007d0, shape=0x1000c0220 = new _poly_5617t_15652 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 len=20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 Get used of 0x1001009a0 Used slot at address 0x100100890 Used of 0x1001009a0 is 20 varray(1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1) create empty array length 20 Malloc 80 bytes, address = 0x100100720 Allocated 0x100100720, shape=0x1000c01e0 = new int Get count of 0x100100720 Count slot at address 0x100100830 Count of 0x100100720 is 20 Set used of 0x100100720 to 0 set_used: No recorded usage! Creating store for data Slot for 0x100100720 usage is address 0x1001008c0 Get count of 0x100100720 Count slot at address 0x100100830 Count of 0x100100720 is 20 Get used of 0x100100720 Used slot at address 0x1001008c0 Used of 0x100100720 is 0 Array at 0x100100720, used = 0, max=20 Maybe collect? Malloc 16 bytes, address = 0x100100770 Allocated 0x100100770, shape=0x1000c0220 = new _poly_5617t_15652 Get used of 0x100100720 Used slot at address 0x1001008c0 Used of 0x100100720 is 0 0 Darray increment Get used of 0x100100720 Used slot at address 0x1001008c0 Used of 0x100100720 is 0 Varray len = 0 Get count of 0x100100720 Count slot at address 0x100100830 Count of 0x100100720 is 20 Varray maxlen = 20 Get used of 0x100100720 Used slot at address 0x1001008c0 Used of 0x100100720 is 0 Get count of 0x100100720 Count slot at address 0x100100830 Count of 0x100100720 is 20 Newsize = 1 Get count of 0x100100720 Count slot at address 0x100100830 Count of 0x100100720 is 20 do resize 1 Get used of 0x100100720 Used slot at address 0x1001008c0 Used of 0x100100720 is 0 Making new array maxlen 1 old len 0 Get used of 0x100100720 Used slot at address 0x1001008c0 Used of 0x100100720 is 0 Make varray size 1 used 0 from function create empty array length 1 Malloc 4 bytes, address = 0x100100990 Allocated 0x100100990, shape=0x1000c01e0 = new int Get count of 0x100100990 Count slot at address 0x0 Count of 0x100100990 is 1 Set used of 0x100100990 to 0 set_used: No recorded usage! Creating store for data Slot for 0x100100990 usage is address 0x100100a30 Get count of 0x100100990 Count slot at address 0x0 Count of 0x100100990 is 1 Get used of 0x100100990 Used slot at address 0x100100a30 Used of 0x100100990 is 0 Array at 0x100100990, used = 0, max=1 Constructed varray of 0 used elements size 1 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a20 Used of 0x100100720 is 0 Get used of 0x100100720 Used slot at address 0x100100a08 <<--- why slot changed? Used of 0x100100720 is 4296018320 <<--- crap Get used of 0x100100720 Used slot at address 0x100100a08 Used of 0x100100720 is 4296018320 <<--------------------- Get count of 0x100100990 Count slot at address 0x0 Count of 0x100100990 is 1 Assertion failed: (n<=get_count(memory)), function set_used, file src/gc/flx_collector.cpp, line 150. Not surprising considering marked lines .. I actually don't understand what is happening here. -- john skaller skal...@users.sourceforge.net ------------------------------------------------------------------------------ Learn how Oracle Real Application Clusters (RAC) One Node allows customers to consolidate database storage, standardize their database environment, and, should the need arise, upgrade to a full multi-node Oracle RAC database without downtime or disruption http://p.sf.net/sfu/oracle-sfdevnl _______________________________________________ Felix-language mailing list Felix-language@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/felix-language