id,summary,reporter,owner,description,type,status,priority,milestone,component,version,severity,resolution,keywords,cc,lang,patch,platform
1872,t/pmc/fixedstringarray.t fails coretest 64 bit with g++-4.5,mikehh,bacek,"I first got this failure with Kubuntu 10.10 amd64 (g++-4.5) - (RELEASE_2_10_1-477-gfa56f62)

{{{
make corevm/make coretest:

t/pmc/fixedstringarray.t ............ Failed 10/50 subtests

Test Summary Report
-------------------
t/pmc/fixedstringarray.t          (Wstat: 11 Tests: 40 Failed: 0)
  Non-zero wait status: 11
  Parse errors: Bad plan.  You planned 50 tests but ran 40.
Files=217, Tests=6641, 40 wallclock secs ( 3.37 usr  0.83 sys + 72.65 cusr 15.20 csys = 92.05 CPU)
Result: FAIL
make: *** [coretest] Error 1
}}}

(status 11 indicates a Segmentation Fault)

{{{
prove -v t/pmc/fixedstringarray.t
t/pmc/fixedstringarray.t ..
1..50
ok 1 - Fresh array has 0 elements
ok 2 - Size was set correctly
ok 3 - Can't resize
ok 4 - First element set to integer properly
ok 5 - First element set to number properly
ok 6 - First element set to string properly
ok 7 - Second element set to integer properly
ok 8 - Second element set to number properly
ok 9 - Second element set to string properly
ok 10 - Can't set out-of-bounds element
ok 11 - Can't set element on negative index
ok 12 - Can't get out-of-bounds element
ok 13 - Can't get element with negative index
ok 14 - Set INTVAL via PMC Key works
ok 15 - Set FLOATVAL via PMC Key works
ok 16 - Set STRING via PMC Key works
ok 17 - Get INTVAL via Key works
ok 18 - Get FLOATVAL via Key works
ok 19 - Get STRING via Key works
ok 20 - Get INTVAL for stored PMC via Key works
ok 21 - Does not scalar
ok 22 - Does array
ok 23 - Does not no_interface
ok 24 - First element cloned
ok 25 - Second element cloned
ok 26 - Third element cloned
ok 27 - Resize of uninitialized clone successful
ok 28 - Resize of initialization not successful
ok 29 - Empty array is false
ok 30 - Non-empty array is true
ok 31 - Iteration works
ok 32 - get_iter works
ok 33 - Array stringified properly
ok 34 - Empty arrays are equal
ok 35 - Not equal to other type
ok 36 - Different size arrays aren't equal
ok 37 - Equal with first element set
ok 38 - Not equal when second element differ
ok 39 - Equal when second element same
ok 40 - Not equal when second element is null
Failed 10/50 subtests

Test Summary Report
-------------------
t/pmc/fixedstringarray.t (Wstat: 11 Tests: 40 Failed: 0)
  Non-zero wait status: 11
  Parse errors: Bad plan.  You planned 50 tests but ran 40.
Files=1, Tests=40,  0 wallclock secs ( 0.04 usr  0.00 sys +  0.48 cusr  0.00 csys =  0.52 CPU)
Result: FAIL
mhk@mhk-desktop:~/parrot$ date
Wed Nov 24 12:37:09 GMT 2010
}}}

subtest 41..44 are in sub 'test_gc'

I extracted these and ran them separately - PASS

subtests 34..40 are in sub 'test_equality'

I added these (so 34..44 became 1..11) - PASS

The test passes after running make world/make test.  It also passes make corevm/make coretest using g++-4.5 with --optimize and with gcc-4.5 (with or without --optimize) and on i386 (32 bit) versions of Ubuntu and also with Ubuntu 10.04 amd64 with g++-4.4

So it only fails on 64-bit Ubuntu and Kubuntu 10.10 with g++-4.5 after running make corevm, before running make (world).

At this stage I am not sure if this is a bug in the compiler (?), something in my setup, or a fundamental problem that it is picking up in parrot.

I did a new clone of parrot just in case and I got the same results with Ubuntu 10.10 amd64 (g++-4.5) - RELEASE_2_10_1-477-gfa56f62 and again with RELEASE_2_10_1-490-g3cfeb72

Comments Welcome.
",bug,closed,normal,2.11,core,master,medium,fixed,Segmentation Fault,,,,linux
