Nicholas Clark wrote on 2009-08-28:
> On Fri, Aug 28, 2009 at 01:38:42PM +0100, Steve Hay wrote:
>> Nicholas Clark wrote on 2009-08-28:
> 
>>> Does anyone have convenient access to Win32 to run this and display
>>> the output?
>>> 
>>> Right now you might need to run it as (the Win32 transcription) of
cd
>>> ext/DynaLoader && ../../perl -I../../t -MTestInit=U2T,NC -T
>>> t/DynaLoader.t
>>> 
>>> (or cd t && ./perl harness ../ext/DynaLoader/DynaLoader.t )
>>> 
>>  C:\gitclients\perl\t>..\perl .\harness -v
>> ..\ext\DynaLoader\t\DynaLoader.t Not enough arguments for
>> DynaLoader::dl_load_file at t/DynaLoader.t line 90, near "() " BEGIN
>> not safe after errors--compilation aborted at t/DynaLoader.t line 94.
>> ../ext/DynaLoader/t/DynaLoader.t .. No subtests run
> 
> Thanks. Why on earth is it unhappy? On Linux I see this
> 
> ./perl -Ilib -MDynaLoader -lwe 'eval {DynaLoader::dl_load_file()};
> print "The error was $@"'
> The error was Usage: DynaLoader::dl_load_file(filename, flags=0) at -e
> line 1.
> 
> What is causing DynaLoader::dl_load_file() to have a prototype, all of
a
> sudden? The line "MODULE = DynaLoader PACKAGE = DynaLoader" in
> win32/dl_win32.xs dates from 1997.

Not sure, but running the test directly from ext\DynaLoader, rather than
using t\harness, is fine:

C:\gitclients\perl\ext\DynaLoader>..\..\perl -T t\DynaLoader.t
1..40
ok 1 - use DynaLoader;
ok 2 - DynaLoader->can('bootstrap')
ok 3 - DynaLoader->can('dl_load_flags')
ok 4 - DynaLoader->can('dl_error')
ok 5 - DynaLoader->can('dl_find_symbol')
ok 6 - DynaLoader->can('dl_install_xsub')
ok 7 - DynaLoader->can('dl_load_file')
ok 8 - DynaLoader->can('dl_undef_symbols')
ok 9 - DynaLoader->can('dl_unload_file')
not ok 10 - DynaLoader->can('dl_expandspec') # TODO Test::More::can_ok()
seems to have trouble dealing with AutoLoaded functions
#   Failed (TODO) test 'DynaLoader->can('dl_expandspec')'
#   at t\DynaLoader.t line 66.
#     DynaLoader->can('dl_expandspec') failed
not ok 11 - DynaLoader->can('dl_findfile') # TODO Test::More::can_ok()
seems to have trouble dealing with AutoLoaded functions
#   Failed (TODO) test 'DynaLoader->can('dl_findfile')'
#   at t\DynaLoader.t line 67.
#     DynaLoader->can('dl_findfile') failed
not ok 12 - DynaLoader->can('dl_find_symbol_anywhere') # TODO
Test::More::can_ok() seems to have trouble dealing with AutoLoaded
functions
#   Failed (TODO) test 'DynaLoader->can('dl_find_symbol_anywhere')'
#   at t\DynaLoader.t line 68.
#     DynaLoader->can('dl_find_symbol_anywhere') failed
ok 13 - calling DynaLoader::bootstrap() with no argument
ok 14 - calling DynaLoader::bootstrap() with a package without binary
object
ok 15 - calling DynaLoader::dl_load_file() with no argument
ok 16 - calling DynaLoader::dl_load_file() with undefined argument
ok 17 - calling DynaLoader::dl_load_file() without an existing library
should fail
ok 18 - dl_error() returning an error message: 'load_file:The specified
module could not be found at t\DynaLoader.t line 99.
# '
ok 19 - calling dl_findfile()
ok 20 # skip dl_findfile test not appropriate on MSWin32
ok 21 - loading Cwd
ok 22 - loading File::Glob
ok 23 # skip List::Util not available
ok 24 # skip List::Util not available
ok 25 # skip List::Util not available
ok 26 - loading SDBM_File
ok 27 - loading Socket
ok 28 - loading Time::HiRes
ok 29 - checking number of items in @dl_librefs
ok 30 - checking number of items in @dl_modules
ok 31 - calling dl_unload_file() for Time::HiRes
ok 32 -  - unload was successful
ok 33 - calling dl_unload_file() for Socket
ok 34 -  - unload was successful
ok 35 - calling dl_unload_file() for SDBM_File
ok 36 -  - unload was successful
ok 37 - calling dl_unload_file() for File::Glob
ok 38 -  - unload was successful
ok 39 - calling dl_unload_file() for Cwd
ok 40 -  - unload was successful

Reply via email to