# New Ticket Created by  Alberto Simoes 
# Please include the string:  [perl #37463]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/rt3/Ticket/Display.html?id=37463 >


---
osname= darwin
osvers= 8.0
arch=   darwin-thread-multi-2level
cc=     cc 
---
Flags:
    category=library
    severity=medium
    ack=no
---
This is the output for the test...

t/dynclass/gdbmhash............NOK 1
#     Failed test (t/dynclass/gdbmhash.t at line 43)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# GDBMHash
# '
#     expected: 'GDBMHash
# '
t/dynclass/gdbmhash............NOK 2
#     Failed test (t/dynclass/gdbmhash.t at line 56)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# 0
# 1
# 0
# '
#     expected: '0
# 1
# 0
# '
t/dynclass/gdbmhash............NOK 3
#     Failed test (t/dynclass/gdbmhash.t at line 76)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# An unitialized GDBMHash has size 0.
# An GDBMHash for a new file has size 0.
# After one assignment GDBMHash has size 1.
# After two assignments GDBMHash has size 2.
# After 15 assignments GDBMHash has size 15.
# '
#     expected: 'An unitialized GDBMHash has size 0.
# An GDBMHash for a new file has size 0.
# After one assignment GDBMHash has size 1.
# After two assignments GDBMHash has size 2.
# After 15 assignments GDBMHash has size 15.
# '
t/dynclass/gdbmhash............NOK 4
#     Failed test (t/dynclass/gdbmhash.t at line 129)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# An uninitialized GDBMHash is not.
# An GDBMHash for a new file is not.
# After one insert the GDBMHash is.
# '
#     expected: 'An uninitialized GDBMHash is not.
# An GDBMHash for a new file is not.
# After one insert the GDBMHash is.
# '
t/dynclass/gdbmhash............NOK 5
#     Failed test (t/dynclass/gdbmhash.t at line 161)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# Wert urspruenglich
# Wert geaendert
# Wert nocheinmal geaendert
# Wert urspruenglich
# '
#     expected: 'Wert urspruenglich
# Wert geaendert
# Wert nocheinmal geaendert
# Wert urspruenglich
# '
t/dynclass/gdbmhash............NOK 6
#     Failed test (t/dynclass/gdbmhash.t at line 189)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# 0
# 1
# 0
# 1
# '
#     expected: '0
# 1
# 0
# 1
# '
t/dynclass/gdbmhash............NOK 7
#     Failed test (t/dynclass/gdbmhash.t at line 223)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# Wert
# Wert
# Wert
# Wert
# '
#     expected: 'Wert
# Wert
# Wert
# Wert
# '
t/dynclass/gdbmhash............NOK 8
#     Failed test (t/dynclass/gdbmhash.t at line 254)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# Wert
# Wert
# Wert
# Wert
# '
#     expected: 'Wert
# Wert
# Wert
# Wert
# '
t/dynclass/gdbmhash............NOK 9
#     Failed test (t/dynclass/gdbmhash.t at line 288)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# Wert
# Wert
# Wert
# Wert
# '
#     expected: 'Wert
# Wert
# Wert
# Wert
# '
t/dynclass/gdbmhash............NOK 10
#     Failed test (t/dynclass/gdbmhash.t at line 321)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# Wert
# Wert
# Wert
# Wert
# '
#     expected: 'Wert
# Wert
# Wert
# Wert
# '
t/dynclass/gdbmhash............NOK 11
#     Failed test (t/dynclass/gdbmhash.t at line 358)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# -11012005
# -11012005
# -11012005
# -11012005
# '
#     expected: '-11012005
# -11012005
# -11012005
# -11012005
# '
t/dynclass/gdbmhash............NOK 12
#     Failed test (t/dynclass/gdbmhash.t at line 393)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# -1101.2
# -1101.2
# -1101.2
# -1101.2
# '
#     expected: '-1101.2
# -1101.2
# -1101.2
# -1101.2
# '
t/dynclass/gdbmhash............NOK 13
#     Failed test (t/dynclass/gdbmhash.t at line 428)
#          got: 'Couldn't load 'libgdbm': unknown reason
# Couldn't load 'libgdbm': unknown reason
# "a" exists: 0
# "a" exists: 1
# "a" exists: 0
# '
#     expected: '"a" exists: 0
# "a" exists: 1
# "a" exists: 0
# '
# Looks like you failed 13 tests of 13.
t/dynclass/gdbmhash............dubious
        Test returned status 13 (wstat 3328, 0xd00)
DIED. FAILED tests 1-13
        Failed 13/13 tests, 0.00% okay


Some thoughs:

on src/dynext.c...

PMC *Parrot_init_lib(Interp *interpreter,
                PMC *(*load_func)(Interp *),
                void (*init_func)(Interp *, PMC *))
{
    PMC *lib_pmc = NULL;

    if (load_func)
        lib_pmc = (*load_func)(interpreter);

    if (!load_func || !lib_pmc) {
        /* seems to be a native/NCI lib */
        [...]
        lib_pmc = pmc_new(interpreter, enum_class_ParrotLibrary);
    }

Basically, 'load_func' is true, but loading fails (twice, don't know why yet). 
Then, code enter in the second if, and it *seems* to work.

Now, if there are two different options to load the library, the code used to 
load it can't just write to stdout the error message.


---
Summary of my parrot 0.3.0 (r9501) configuration:
  configdate='Mon Oct 17 20:22:49 2005'
  Platform:
    osname=darwin, archname=darwin-thread-multi-2level
    jitcapable=1, jitarchname=ppc-darwin,
    jitosname=DARWIN, jitcpuarch=ppc
    execcapable=1
    perl=perl
  Compiler:
    cc='gcc -L/sw/lib -I/sw/include', ccflags='-g -pipe -fno-common 
-no-cpp-precomp  -I/usr/local/include -pipe -fno-common -Wno-long-double ',
  Linker and Libraries:
    ld='gcc -L/sw/lib -I/sw/include', ldflags='-L/usr/local/lib -flat_namespace 
',
    cc_ldflags='',
    libs='-lm -lgmp'
  Dynamic Linking:
    share_ext='.dylib', ld_share_flags='-dynamiclib',
    load_ext='.bundle', ld_load_flags='-bundle -undefined suppress'
  Types:
    iv=long, intvalsize=4, intsize=4, opcode_t=long, opcode_t_size=4,
    ptrsize=4, ptr_alignment=1 byteorder=4321, 
    nv=double, numvalsize=8, doublesize=8

---
Environment:
    DYLD_LIBRARY_PATH    HOME    LANG    LANGUAGE    LD_LIBRARY_PATH    LOGDIR  
  PATH    PERL5LIB    PERL5_CPANPLUS_CONFIG    SHELL
-- 
Departamento de Informatica - Universidade do Minho

"The C Programming Language -- A language which combines the
flexibility of assembly language with the power of assembly language."

Reply via email to