From: Leopold Toetsch <[EMAIL PROTECTED]> Date: Sat, 19 Mar 2005 17:19:49 +0100
. . . 2) these methods can be called in various ways: Px = cos Py # opcode syntax cos Px, Py # same Px = "cos"(Py) # function call Px = Py."cos"() # method call cl = getclass Float Px = cl."cos"(y) # class method m = getattribute cl, "cos" Px = m(y) # bound class method m = getattribute y, "cos" Px = m() # bound object method This doesn't seem to be working for me. I did a fresh CVS checkout just now (so no "cvs update -d" issues -- ;-), and got the following test results: Failed Test Stat Wstat Total Fail Failed List of Failed -------------------------------------------------------------------------------- t/pmc/nci.t 17 4352 56 17 30.36% 1-8 10 35 39 41 44-46 51-52 t/pmc/object-meths.t 1 256 28 1 3.57% 28 2 tests and 62 subtests skipped. Failed 2/139 test scripts, 98.56% okay. 18/2259 subtests failed, 99.20% okay. The failing t/pmc/object-meths.t test gets a segfault: [EMAIL PROTECTED]> ./parrot "/usr/src/parrot/t/pmc/object-meths_28.imc" opcode 0.540302 Segmentation fault [EMAIL PROTECTED]> A backtrace is appended. (I looked at a handful of failing t/pmc/nci.t cases, and they all looked similar, i.e. also in Parrot_NCI_invoke.) Is there anything else I should be looking at? -- Bob Rogers http://rgrjr.dyndns.org/ ------------------------------------------------------------------------ (gdb) r /usr/src/parrot/t/pmc/object-meths_28.imc Starting program: /usr/src/parrot/parrot /usr/src/parrot/t/pmc/object-meths_28.imc [Thread debugging using libthread_db enabled] [New Thread 1076589664 (LWP 17677)] [New Thread 1087552432 (LWP 17680)] [New Thread 1089653680 (LWP 17681)] opcode 0.540302 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 1076589664 (LWP 17677)] 0x081d8e52 in Parrot_NCI_invoke (interpreter=0x830b008, pmc=0x84d38b8, next=0x854a688) at classes/nci.c:122 (gdb) bt #0 0x081d8e52 in Parrot_NCI_invoke (interpreter=0x830b008, pmc=0x84d38b8, next=0x854a688) at classes/nci.c:122 #1 0x080f8c93 in Parrot_invokecc (cur_opcode=0x854a684, interpreter=0x830b008) at core.ops:441 #2 0x0816b03c in runops_slow_core (interpreter=0x830b008, pc=0x854a684) at src/runops_cores.c:147 #3 0x08169468 in runops_int (interpreter=0x830b008, offset=0) at src/interpreter.c:742 #4 0x0816a345 in runops (interpreter=0x830b008, offs=0) at src/inter_run.c:81 #5 0x080d7ec4 in Parrot_runcode (interpreter=0x830b008, argc=1, argv=0xbffff738) at src/embed.c:768 #6 0x080d7d02 in Parrot_runcode (interpreter=0x830b008, argc=1, argv=0xbffff738) at src/embed.c:700 #7 0x0809db0c in main (argc=1, argv=0xbffff738) at imcc/main.c:603 (gdb)