http://qs321.pair.com?node_id=1070837


in reply to Perl 5 Optimizing Compiler, Part 11: RPerl v1.0 Beta Released!

I still don't really know where to go from there:

So I'm firing up the test suite as asked and then...

ok 1 - use Data::Dumper; ok 2 - use Parse::RecDescent; ok 3 - use Inline; ok 4 - use Inline::Filters; ok 5 - require Data::Dumper; ok 6 - require Parse::RecDescent; ok 7 - require Inline; ok 8 - require Inline::C; ok 9 - require Inline::CPP; ok 10 - require Inline::Filters; 1..10 ok 1 - Inline::C, define greet() returns correct value ok 2 - Inline::C, call greet() returns correct value ok 3 - Inline::C, define greet_bind() returns correct value ok 4 - Inline::C, call greet_bind() returns correct value ok 5 - Inline::C, define JAxH() returns correct value ok 6 - Inline::C, call JAxH() returns correct value ok 7 - Inline::C, define greetings_char() returns correct value ok 8 - Inline::C, call greetings_char() returns correct value ok 9 - Inline::C, define greetings_sv() returns correct value ok 10 - Inline::C, call greetings_sv() returns correct value ok 11 - Inline::C, define greetings_void() returns correct value ok 12 - Inline::C, call greetings_void() returns correct value ok 13 - Inline::C, define change() returns correct value ok 14 - Inline::C, call change() returns correct value ok 15 - Inline::C, call change(), correctly change variable 1 ok 16 - Inline::C, call change(), correctly change variable 2 1..16 ok 1 - Inline::CPP, define class Farmer returns correct value ok 2 - Inline::CPP, call Farmer methods returns correct value ok 3 - Inline::CPP, define class Airplane returns correct value ok 4 - Inline::CPP, call Airplane methods, return correct value 1 ok 5 - Inline::CPP, call Airplane methods, return correct value 2 ok 6 - Inline::CPP, define average() and avg() returns correct value ok 7 - Inline::CPP, call average() and avg() returns correct value 1 ok 8 - Inline::CPP, call average() and avg() returns correct value 2 ok 9 - Inline::CPP, call average() and avg() return values are equival +ent ok 10 - Inline::CPP, define classes Queue and Stack returns correct va +lue ok 11 - Inline::CPP, call Queue and Stack methods returns correct valu +e 1 ok 12 - Inline::CPP, call Queue and Stack methods returns correct valu +e 2 ok 13 - Inline::CPP, define multiadd() returns correct value ok 14 - Inline::CPP, call multiadd(1) returns correct value ok 15 - Inline::CPP, call multiadd(1, 2) returns correct value ok 16 - Inline::CPP, call multiadd(1, 2, 3) returns correct value ok 17 - Inline::CPP, call multiadd(1, 2, 3, 4) throws correct exceptio +n 1..17 ok 1 - use RPerl; ok 2 - use parent ('RPerl'); ok 3 - use Data::Dumper; ok 4 - our $AUTOLOAD; sub AUTOLOAD {...} ok 5 - use RPerl::DataType::Integer_cpp; ok 6 - use RPerl::DataType::Number_cpp; ok 7 - use RPerl::DataType::String_cpp; Generating a Unix-style Makefile Writing Makefile for eval_652_d115 Writing MYMETA.yml and MYMETA.json Running Mkbootstrap for eval_652_d115 () chmod 644 eval_652_d115.bs /usr/bin/perl5.18.1 /usr/share/perl5/ExtUtils/xsubpp -typemap "/usr/s +hare/perl5/ExtUtils/typemap" -typemap "/home/emmanuel/dev/git/rperl/l +ib/typemap.rperl" eval_652_d115.xs > eval_652_d115.xsc && mv eval_6 +52_d115.xsc eval_652_d115.c g++ -c -I"/home/emmanuel/dev/git/rperl/t" -Ilib -Wno-deprecated -std= +c++0x -Wno-reserved-user-defined-literal -O2 -march=i486 -mtune=i686 + -DVERSION=\"0.00\" -DXS_VERSION=\"0.00\" -fPIC "-I/usr/lib/perl5/CO +RE" eval_652_d115.c rm -f blib/arch/auto/eval_652_d115/eval_652_d115.so LD_RUN_PATH="/usr/lib" cc -shared -O2 -march=i486 -mtune=i686 -L/usr/ +local/lib -fstack-protector eval_652_d115.o -o blib/arch/auto/eval_6 +52_d115/eval_652_d115.so \ -lstdc++ \ chmod 755 blib/arch/auto/eval_652_d115/eval_652_d115.so /usr/bin/perl5.18.1 -MExtUtils::Command::MM -e 'cp_nonempty' -- eval_6 +52_d115.bs blib/arch/auto/eval_652_d115/eval_652_d115.bs 644 Running Mkbootstrap for eval_652_d115 () chmod 644 eval_652_d115.bs Files found in blib/arch: installing files in blib/lib into architectu +re dependent library tree Installing /home/emmanuel/dev/git/rperl/_Inline/lib/auto/eval_652_d115 +/eval_652_d115.so ok 1 - use RPerl; ok 2 - use parent ('RPerl'); ok 3 - use Data::Dumper; ok 4 - our $AUTOLOAD; sub AUTOLOAD {...} ok 5 - use RPerl::DataStructure::Array_cpp; Generating a Unix-style Makefile Writing Makefile for eval_642_d115 Writing MYMETA.yml and MYMETA.json Running Mkbootstrap for eval_642_d115 () chmod 644 eval_642_d115.bs /usr/bin/perl5.18.1 /usr/share/perl5/ExtUtils/xsubpp -typemap "/usr/s +hare/perl5/ExtUtils/typemap" -typemap "/home/emmanuel/dev/git/rperl/l +ib/typemap.rperl" eval_642_d115.xs > eval_642_d115.xsc && mv eval_6 +42_d115.xsc eval_642_d115.c g++ -c -I"/home/emmanuel/dev/git/rperl/t" -Ilib -Wno-deprecated -std= +c++0x -Wno-reserved-user-defined-literal -O2 -march=i486 -mtune=i686 + -DVERSION=\"0.00\" -DXS_VERSION=\"0.00\" -fPIC "-I/usr/lib/perl5/CO +RE" eval_642_d115.c rm -f blib/arch/auto/eval_642_d115/eval_642_d115.so LD_RUN_PATH="/usr/lib" cc -shared -O2 -march=i486 -mtune=i686 -L/usr/ +local/lib -fstack-protector eval_642_d115.o -o blib/arch/auto/eval_6 +42_d115/eval_642_d115.so \ -lstdc++ \ chmod 755 blib/arch/auto/eval_642_d115/eval_642_d115.so /usr/bin/perl5.18.1 -MExtUtils::Command::MM -e 'cp_nonempty' -- eval_6 +42_d115.bs blib/arch/auto/eval_642_d115/eval_642_d115.bs 644 Running Mkbootstrap for eval_642_d115 () chmod 644 eval_642_d115.bs Files found in blib/arch: installing files in blib/lib into architectu +re dependent library tree Installing /home/emmanuel/dev/git/rperl/_Inline/lib/auto/eval_642_d115 +/eval_642_d115.so ok 1 - use RPerl; ok 2 - use parent ('RPerl'); ok 3 - use Data::Dumper; ok 4 - our $AUTOLOAD; sub AUTOLOAD {...} ok 5 - use RPerl::DataStructure::Hash_cpp; 1..0 # SKIP [[[ OBJECT-ORIENTED TESTS DISABLED UNTIL C++ -> PERL NAMES +PACE ISSUES ARE FIXED IN INLINE::CPP ]]] ok 1 - use RPerl; ok 2 - use parent ('RPerl'); ok 3 - use Data::Dumper; ok 4 - our $AUTOLOAD; sub AUTOLOAD {...} ok 5 - use RPerl::Algorithm::Sort::Bubble; ok 6 - use RPerl::Algorithm::Sort::Bubble_cpp; Generating a Unix-style Makefile Writing Makefile for eval_704_d115 Writing MYMETA.yml and MYMETA.json Running Mkbootstrap for eval_704_d115 () chmod 644 eval_704_d115.bs /usr/bin/perl5.18.1 /usr/share/perl5/ExtUtils/xsubpp -typemap "/usr/s +hare/perl5/ExtUtils/typemap" -typemap "/home/emmanuel/dev/git/rperl/l +ib/typemap.rperl" eval_704_d115.xs > eval_704_d115.xsc && mv eval_7 +04_d115.xsc eval_704_d115.c g++ -c -I"/home/emmanuel/dev/git/rperl/t" -Ilib -Wno-deprecated -std= +c++0x -Wno-reserved-user-defined-literal -O2 -march=i486 -mtune=i686 + -DVERSION=\"0.00\" -DXS_VERSION=\"0.00\" -fPIC "-I/usr/lib/perl5/CO +RE" eval_704_d115.c rm -f blib/arch/auto/eval_704_d115/eval_704_d115.so LD_RUN_PATH="/usr/lib" cc -shared -O2 -march=i486 -mtune=i686 -L/usr/ +local/lib -fstack-protector eval_704_d115.o -o blib/arch/auto/eval_7 +04_d115/eval_704_d115.so \ -lstdc++ \ chmod 755 blib/arch/auto/eval_704_d115/eval_704_d115.so
/usr/bin/perl5.18.1 -MExtUtils::Command::MM -e 'cp_nonempty' -- eval_7 +04_d115.bs blib/arch/auto/eval_704_d115/eval_704_d115.bs 644 Running Mkbootstrap for eval_704_d115 () chmod 644 eval_704_d115.bs Files found in blib/arch: installing files in blib/lib into architectu +re dependent library tree Installing /home/emmanuel/dev/git/rperl/_Inline/lib/auto/eval_704_d115 +/eval_704_d115.so sh : ligne 1 : 12295 Erreur de segmentation perl -Ilib t/08*.t 2> /de +v/null
Here we are. Running Slackware 14.1, standard perl installation.

Replies are listed 'Best First'.
Re^2: Perl 5 Optimizing Compiler, Part 11: RPerl v1.0 Beta Released!
by Will_the_Chill (Pilgrim) on Jan 17, 2014 at 09:10 UTC
    wazoox,

    Thanks for your interest in RPerl!

    It looks like you're passing the first 3 test files, then failing on the 4th test, which is where we actually start to use RPerl data types.

    Please try to run this command and post the output:

    rm -Rf _Inline/; reset; perl -Ilib t/04_type_scalar.t

    You may also choose to join us in #perl11 on irc.perl.org where Reini Urban, bulk88, and other RPerl people hang out. I'm not always online 24/7, but when I am online I may be able to give you somewhat faster feedback than through Perl Monks. Either way works fine for me! :-)

    Perling,
    ~ Will the Chill
      OK, here are the results:
      # # [[[ Beginning Scalar Type Pre-Test Loading, RPerl Type System ]]] # ok 1 - use RPerl; ok 2 - use parent ('RPerl'); ok 3 - use Data::Dumper; ok 4 - our $AUTOLOAD; sub AUTOLOAD {...} ok 5 - use RPerl::DataType::Integer_cpp; ok 6 - use RPerl::DataType::Number_cpp; ok 7 - use RPerl::DataType::String_cpp; in Array.pm, loading C++ helper functions for type-checking... in HelperFunctions_cpp::cpp_load(), have $RPerl::HelperFunctions_cpp:: +CPP_LOADED = '0' validate Stage Starting Build Preprocess Stage get_maps Stage Finished Build Preprocess Stage Starting Build Parse Stage Finished Build Parse Stage Starting Build Glue 1 Stage Finished Build Glue 1 Stage Starting Build Glue 2 Stage Finished Build Glue 2 Stage Starting Build Glue 3 Stage Finished Build Glue 3 Stage Starting Build Compile Stage Starting "perl Makefile.PL" Stage Generating a Unix-style Makefile Writing Makefile for eval_652_d115 Writing MYMETA.yml and MYMETA.json Finished "perl Makefile.PL" Stage Starting "make" Stage Running Mkbootstrap for eval_652_d115 () chmod 644 eval_652_d115.bs /usr/bin/perl5.18.1 /usr/share/perl5/ExtUtils/xsubpp -typemap "/usr/s +hare/perl5/ExtUtils/typemap" -typemap "/home/emmanuel/dev/git/rperl/l +ib/typemap.rperl" eval_652_d115.xs > eval_652_d115.xsc && mv eval_6 +52_d115.xsc eval_652_d115.c g++ -c -I"/home/emmanuel/dev/git/rperl/t" -Ilib -Wno-deprecated -std= +c++0x -Wno-reserved-user-defined-literal -O2 -march=i486 -mtune=i686 + -DVERSION=\"0.00\" -DXS_VERSION=\"0.00\" -fPIC "-I/usr/lib/perl5/CO +RE" eval_652_d115.c In file included from /usr/lib/perl5/CORE/perl.h:3476:0, from eval_652_d115.xs:11: /usr/lib/perl5/CORE/pad.h:146:19: attention : invalid suffix on litera +l; C++11 requires a space between literal and identifier [-Wliteral-s +uffix] Perl_croak(aTHX_ "panic: illegal pad in %s: 0x%"UVxf"[0x%"UVxf"]",\ ^ /usr/lib/perl5/CORE/pad.h:146:54: attention : invalid suffix on litera +l; C++11 requires a space between literal and identifier [-Wliteral-s +uffix] Perl_croak(aTHX_ "panic: illegal pad in %s: 0x%"UVxf"[0x%"UVxf"]",\ ^ /usr/lib/perl5/CORE/pad.h:153:19: attention : invalid suffix on litera +l; C++11 requires a space between literal and identifier [-Wliteral-s +uffix] Perl_croak(aTHX_ "panic: invalid pad in %s: 0x%"UVxf"[0x%"UVxf"]",\ ^ /usr/lib/perl5/CORE/pad.h:153:54: attention : invalid suffix on litera +l; C++11 requires a space between literal and identifier [-Wliteral-s +uffix] Perl_croak(aTHX_ "panic: invalid pad in %s: 0x%"UVxf"[0x%"UVxf"]",\ ^ /usr/lib/perl5/CORE/pad.h:323:8: attention : invalid suffix on literal +; C++11 requires a space between literal and identifier [-Wliteral-su +ffix] "Pad 0x%"UVxf"[0x%"UVxf"] set_cur depth=%d\n", \ ^ /usr/lib/perl5/CORE/pad.h:323:21: attention : invalid suffix on litera +l; C++11 requires a space between literal and identifier [-Wliteral-s +uffix] "Pad 0x%"UVxf"[0x%"UVxf"] set_cur depth=%d\n", \ ^ /usr/lib/perl5/CORE/pad.h:341:8: attention : invalid suffix on literal +; C++11 requires a space between literal and identifier [-Wliteral-su +ffix] "Pad 0x%"UVxf"[0x%"UVxf"] save_local\n", \ ^ /usr/lib/perl5/CORE/pad.h:341:21: attention : invalid suffix on litera +l; C++11 requires a space between literal and identifier [-Wliteral-s +uffix] "Pad 0x%"UVxf"[0x%"UVxf"] save_local\n", \ ^ /usr/lib/perl5/CORE/pad.h:349:8: attention : invalid suffix on literal +; C++11 requires a space between literal and identifier [-Wliteral-su +ffix] "Pad 0x%"UVxf"[0x%"UVxf"] restore_local\n", \ ^ /usr/lib/perl5/CORE/pad.h:349:21: attention : invalid suffix on litera +l; C++11 requires a space between literal and identifier [-Wliteral-s +uffix] "Pad 0x%"UVxf"[0x%"UVxf"] restore_local\n", \ ^ In file included from eval_652_d115.xs:11:0: /usr/lib/perl5/CORE/perl.h:4257:8: attention : invalid suffix on liter +al; C++11 requires a space between literal and identifier [-Wliteral- +suffix] INIT("Use of uninitialized value%"SVf"%s%s"); ^ /usr/lib/perl5/CORE/perl.h:4277:8: attention : invalid suffix on liter +al; C++11 requires a space between literal and identifier [-Wliteral- +suffix] INIT("Modification of non-creatable hash value attempted, subscript + \"%"SVf"\""); ^ eval_652_d115.c:212:26: attention : invalid suffix on literal; C++11 r +equires a space between literal and identifier [-Wliteral-suffix] Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), pa +rams); ^ cc1plus: attention : option "-Wno-reserved-user-defined-literal" de la + ligne de commande non reconnue [enabled by default] rm -f blib/arch/auto/eval_652_d115/eval_652_d115.so LD_RUN_PATH="/usr/lib" cc -shared -O2 -march=i486 -mtune=i686 -L/usr/ +local/lib -fstack-protector eval_652_d115.o -o blib/arch/auto/eval_6 +52_d115/eval_652_d115.so \ -lstdc++ \ chmod 755 blib/arch/auto/eval_652_d115/eval_652_d115.so /usr/bin/perl5.18.1 -MExtUtils::Command::MM -e 'cp_nonempty' -- eval_6 +52_d115.bs blib/arch/auto/eval_652_d115/eval_652_d115.bs 644 Finished "make" Stage Starting "make install" Stage Running Mkbootstrap for eval_652_d115 () chmod 644 eval_652_d115.bs Files found in blib/arch: installing files in blib/lib into architectu +re dependent library tree Installing /home/emmanuel/dev/git/rperl/_Inline/lib/auto/eval_652_d115 +/eval_652_d115.so Finished "make install" Stage Starting Cleaning Up Stage Finished Cleaning Up Stage Finished Build Compile Stage Had problems bootstrapping Inline module 'eval_652_d115' Not a CODE reference at /usr/lib/perl5/DynaLoader.pm line 213. END failed--call queue aborted at (eval 733) line 213. at (eval 652) line 4. BEGIN failed--compilation aborted at (eval 652) line 21. at lib/RPerl/DataStructure/Array.pm line 23. INIT failed--call queue aborted. # Tests were run but no plan was declared and done_testing() was not s +een. # Looks like your test exited with 2 just after 7.
      Unfortunately I won't be able to be on IRC until tomorrow.
        wazoox,

        I won't be online for the next few days, but I think this error is actually related to some code changes made by Reini Urban in order to get RPerl to compile on his Macintosh computer. Reini does hang out in #perl11 on irc.perl.org under the username rurban or sometimes rurban1.

        Please try to get Reini's attention on IRC and show him your output to see if he knows an easy and obvious fix. If not, I'll have to dig deeper.

        Thanks!

        Perling,
        ~ Will the Chill