On Dec 21, 2012, at 11:02 PM, Thomas Pfau <tfp...@gmail.com> wrote: > I ran configure.com and selected large integer support but not maximal and > not large double.
Interesting. That's not a well-tested combination obviously. > DISK$USERS:[pfau.FREEWARE.perl-5_16_2.vms]vmsish.h;1 copied to > DISK$USERS:[PFAU.FREEWARE.perl-5_16_2]vmsish.h;1 (58 blocks) > CC/DECC/NOANSI_ALIAS > /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/float=ieee/ieee=denorm/NAMES=(AS_IS,SHORTENED)/Define=(PERL_CORE,_USE_STD_STAT=1) > MINIPERLMAIN.C > > #undef" NV_PRESERVES_UV > ......^ > An unexpected newline character is present in a string literal. > at line number 4525 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]config.h;1 > > #undef" NV_PRESERVES_UV > .......................^ > "#undef" directive is not followed by an identifier and is being ignored. > at line number 4525 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]config.h;1 > Error status %X10B91262 occurred when updating target MINIPERLMAIN.OBJ > > Removing the quote character allows the build to proceed past this point. > Configure.com line 5668 contains the following: > > $ d_nv_preserves_uv = "undef"" > > The double quotation mark at the end gets parsed as a quotation mark inserted > into the string. Ayup, that's a bug in configure.com, introduced here: <http://perl5.git.perl.org/perl.git/commitdiff/a5bd55ee8902ea3fcb2392bf13940a1eed11b8ad>. > > MCR SYS$DISK:[]generate_uudmap.exe uudmap.h bitcount.h mg_data.h > Action did not update target BITCOUNT.H > Action did not update target MG_DATA.H > > I'm not sure if this is a problem or not. Don't think so. MMS and MMK feel the need to tell you that they didn't do anything. > CC/DECC/NOANSI_ALIAS > /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/float=ieee/ieee=denorm/NAMES=(AS_IS,SHORTENED)/Def > ine=(PERL_CORE,_USE_STD_STAT=1) NUMERIC.C > > return NV_MAX; > ...................^ > In this statement, floating-point overflow occurs in evaluating the > expression "1.189731495357231765085759326628007016196477e4932l". > at line number 810 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]numeric.c;1 > Error status %X10B91260 occurred when updating target NUMERIC.OBJ The compiler shouldn't see that code if compiling with /float=IEEE, which is the default on alpha. And you should not get that value for NV_MAX if you're not compiling with long double support. Not sure what's going on there, but it could be related to the configuration problem. > > I can get past this if I use MMK/IGNORE=WARNING. > > CC/DECC/NOANSI_ALIAS > /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/float=ieee/ieee=denorm/NAMES=(AS_IS,SHORTENED)/Def > ine=(PERL_CORE,_USE_STD_STAT=1) PP.C > > NV (*func)(NV) = Perl_sin; > .....................^ > %CC-W-PTRMISMATCH, In the initializer for func, the referenced type of the > pointer value "sinl" is "function (long double) returning > long double", which is not compatible with "function (double) returning > double". > at line number 2691 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]pp.c;1 > > func = Perl_cos; > ........^ > %CC-W-PTRMISMATCH, In this statement, the referenced type of the pointer > value "cosl" is "function (long double) returning long doub > le", which is not compatible with "function (double) returning double". > at line number 2697 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]pp.c;1 > > func = Perl_exp; > ........^ > %CC-W-PTRMISMATCH, In this statement, the referenced type of the pointer > value "expl" is "function (long double) returning long doub > le", which is not compatible with "function (double) returning double". > at line number 2701 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]pp.c;1 > > func = Perl_log; > ........^ > %CC-W-PTRMISMATCH, In this statement, the referenced type of the pointer > value "logl" is "function (long double) returning long doub > le", which is not compatible with "function (double) returning double". > at line number 2705 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]pp.c;1 > > func = Perl_sqrt; > ........^ > %CC-W-PTRMISMATCH, In this statement, the referenced type of the pointer > value "sqrtl" is "function (long double) returning long dou > ble", which is not compatible with "function (double) returning double". > at line number 2710 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]pp.c;1 > CC/DECC/NOANSI_ALIAS > /Include=[]/Standard=Relaxed_ANSI/Prefix=All/Obj=.obj/NoList/float=ieee/ieee=denorm/NAMES=(AS_IS,SHORTENED)/Def > ine=(PERL_CORE,_USE_STD_STAT=1) PP_PACK.C > > cdouble = Perl_modf(cdouble / anv, &trouble) * anv; > ..........................^ > %CC-W-PTRMISMATCH, In this statement, the referenced type of the pointer > value "&trouble" is "double", which is not compatible with > "long double". > at line number 2221 in file DISK$USERS:[pfau.FREEWARE.perl-5_16_2]pp_pack.c;1 > > Not sure if these will become problems but I would guess they will be. > > At this point miniperl gets built ok and it starts to build modules. I'll > have more when I hit those errors. > > -- > Thomas Pfau > tfp...@gmail.com > http://www.linkedin.com/in/thomaspfau > http://nbpfaus.net/~pfau/ ________________________________________ Craig A. Berry mailto:craigbe...@mac.com "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser