Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things
 
PerlMonks  

Re: Looking for testers who use Microsoft compilers

by Anonymous Monk
on Feb 19, 2020 at 05:35 UTC ( #11113145=note: print w/replies, xml ) Need Help??


in reply to Looking for testers who use Microsoft compilers

Hi Rob,

L::U is successfully installed by cpan -i on my visperl. ;) Here is my perl -V
Summary of my perl5 (revision 5 version 30 subversion 1) configuration +: Platform: osname=MSWin32 osvers=10.0.17763.1039 archname=MSWin32-x64-multi-thread uname='' config_args='undef' hint=recommended useposix=true d_sigaction=undef useithreads=define usemultiplicity=define use64bitint=define use64bitall=undef uselongdouble=undef usemymalloc=n default_inc_excludes_dot=define bincompat5005=undef Compiler: cc='cl' ccflags ='-nologo -GF -W3 -TP -EHsc -O1 -MD -Zi -DNDEBUG -GL -fp:p +recise -DWIN32 -D_CONSOLE -DNO_STRICT -DWIN64 -DCONSERVATIVE -D_CRT_S +ECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_WINSOCK_DEPRECATED_ +NO_WARNINGS -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_I +MPLICIT_SYS' optimize='-O1 -MD -Zi -DNDEBUG -GL -fp:precise' cppflags='-DWIN32' ccversion='19.24.28316' gccversion='' gccosandvers='' intsize=4 longsize=4 ptrsize=8 doublesize=8 byteorder=12345678 doublekind=3 d_longlong=undef longlongsize=8 d_longdbl=define longdblsize=8 longdblkind=0 ivtype='__int64' ivsize=8 nvtype='double' nvsize=8 Off_t='__int64' lseeksize=8 alignbytes=8 prototype=define Linker and Libraries: ld='link' ldflags ='-nologo -nodefaultlib -debug -opt:ref,icf -ltcg -libpat +h:"D:\visperl\lib\CORE" -machine:AMD64 -subsystem:console,"5.02"' libpth="D:\Program Files (x86)\Microsoft Visual Studio\2019\Commun +ity\VC\Tools\MSVC\14.24.28314\\lib\x64" libs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib +comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi3 +2.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib o +dbccp32.lib comctl32.lib msvcrt.lib vcruntime.lib ucrt.lib perllibs=oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.l +ib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib net +api32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.l +ib odbccp32.lib comctl32.lib msvcrt.lib vcruntime.lib ucrt.lib libc=ucrt.lib so=dll useshrplib=true libperl=perl530.lib gnulibc_version='' Dynamic Linking: dlsrc=dl_win32.xs dlext=dll d_dlsymun=undef ccdlflags=' ' cccdlflags=' ' lddlflags='-dll -nologo -nodefaultlib -debug -opt:ref,icf -ltcg - +libpath:"D:\visperl\lib\CORE" -machine:AMD64 -subsystem:console,"5.0 +2"' Characteristics of this binary (from libperl): Compile-time options: HAS_TIMES HAVE_INTERP_INTERN MULTIPLICITY PERLIO_LAYERS PERL_COPY_ON_WRITE PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT PERL_IMPLICIT_SYS PERL_MALLOC_WRAP PERL_OP_PARENT PERL_PRESERVE_IVUV USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_LOCALE_TIME USE_PERLIO USE_PERL_ATOF USE_THREAD_SAFE_LOCALE Built under MSWin32 Compiled at Feb 19 2020 16:07:25 @INC: D:/visperl/site/lib D:/visperl/lib

Replies are listed 'Best First'.
Re^2: Looking for testers who use Microsoft compilers
by syphilis (Bishop) on Feb 19, 2020 at 08:27 UTC
    Oh, thank you !!
    That's helpful.

    If you have any perls (the actual perl version is not important) built using earlier versions of a Microsoft Compiler, and those perls were also built with:
    ivtype='__int64' ivsize=8
    could you post the output of perl -V:ccversion for them ?

    Somewhere between ccversion='16.00.30319.01' and ccversion='19.24.28316' a significant change in the MS C runtime occurred. (That change has relevance to List::Uniqnum.)
    But I don't know exactly when that change occurred, and I'd like to find out.

    Thanks again.

    Cheers,
    Rob

      Somewhere between ccversion='16.00.30319.01' and ccversion='19.24.28316' a significant change in the MS C runtime occurred.

      Sorry, I only have installed Visual studio 2017 and 2019 on my server. most of time I've used strawberry perl.





      I am trying to improve my English skills, if you see a mistake please feel free to reply or /msg me a correction

        I only have installed Visual studio 2017 and 2019 on my server

        I was expecting that a perl built with Visual Studio 2017 would report a $Config{ccversion} that was less than '19.24.28316' and greater than '16.00.30319.01'. (My guess is that with Visual Studio 2017, $Config{ccversion} would begin with 19.1...)
        I thought that '19.24.28316' identifies Visual Studio 2019 and that '16.00.30319.01' identifies Visual Studio 2010.

        Anyway, if you have a perl (whose ivsize is 8) that has been built with that Visual Studio 2017 compiler, and could test List::Uniqnum that would be handy.
        Or, alternatively, just provide the output of perl -le "printf '%0.20g', 18446744073709549568;".
        That output will also tell me whether '%0.20g' formatting is reliable or not - and the thing I'm trying to work out is at which version of the Microsoft compilers did '%0.20g' become reliable.
        If it outputs 18446744073709549568, then '%0.20g' formatting is fine ... but not so if it outputs 18446744073709550000.

        Cheers,
        Rob

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://11113145]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others examining the Monastery: (3)
As of 2020-04-10 07:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    The most amusing oxymoron is:
















    Results (49 votes). Check out past polls.

    Notices?