[Bug #1977] test failed in test_isdigit in test/dl/test_func.rb on sparc-solaris-2.10 (64bit)

Bug #1977: test failed in test_isdigit in test/dl/test_func.rb on
sparc-solaris-2.10 (64bit)
http://redmine.ruby-lang.org/issues/show/1977

e$B5/I<<Te(B: Naohisa G.
e$B%9%F!<%?%9e(B: Open, e$BM%@hEYe(B: Normal
ruby -v: ruby 1.9.2dev (2009-08-19) [sparc-solaris2.10]

sparc-solaris-2.10 e$B$K$Fe(B64e$B%S%C%H%3%s%Q%$%k$7$?>l9g!"e(BBug #1967
([ruby-dev:39146])e$B$N%Q%C%A$rE,MQ$7$?8e$G$O!"0J2<$Ne(B2e$B$D$Ne(Bdle$B4XO"e(B
e$B$N%F%9%H$,<:GTe(B(Failure)e$B$7$^$9!#e(B

  1. Failure:
    test_isdigit(DL::TestFunc) [/XXX/test/dl/test_func.rb:21]:
    Failed assertion, no message given.

  2. Failure:
    test_isdigit(DL::TestImport) [/XXX/test/dl/test_import.rb:126]:
    Failed assertion, no message given.

Solarise$BIUB0$N%7%9%F%`%3!<%[email protected]%3%^%s%Ie(Btrusse$B$r;H$C$F!"e(B
$ truss -t ‘!all’ -u ‘libc:isdigit’ /XXX/trunk-24578/bin/testrb test/dl
-v
e$B$N$h$&$J46$8$G!"e([email protected]$7$?$H$3$m!"e(B

(e$BA0N,e(B)
DL::TestFunc#test_isdigit: /[email protected]: -> libc:isdigit(0x3100000000,
0xc, 0xffffffffffffffff, 0xfffffffffffffff8)
/[email protected]: <- libc:isdigit() = 0
/[email protected]: -> libc:isdigit(0x3200000000, 0xc, 0xffffffffffffffff,
0xfffffffffffffff8)
/[email protected]: <- libc:isdigit() = 0
/[email protected]: -> libc:isdigit(0x7200000000, 0xc, 0xffffffffffffffff,
0xfffffffffffffff8)
/[email protected]: <- libc:isdigit() = 0
0.01 s: F
(e$BCfN,e(B)
DL::TestImport#test_isdigit: /[email protected]: -> libc:isdigit(0x3100000000,
0xc, 0xffffffffffffffff, 0xfffffffffffffff8)
/[email protected]: <- libc:isdigit() = 0
/[email protected]: -> libc:isdigit(0x3200000000, 0xc, 0xffffffffffffffff,
0xfffffffffffffff8)
/[email protected]: <- libc:isdigit() = 0
/[email protected]: -> libc:isdigit(0x7200000000, 0xc, 0xffffffffffffffff,
0xfffffffffffffff8)
/[email protected]: <- libc:isdigit() = 0
0.00 s: F
(e$B8eN,e(B)

1e$BHVL$N0z?t$O!“K\Mhe(B 0x31, 0x32, 0x72
e$B$H$$$C$??t$G$”$k$Y$-$H$3$m$,!"e(B
0x3100000000, 0x3200000000, 0x7200000000 e$B$K$J$C$F$7$^$C$F$$$^$9!#e(B

e$B$I$&$d$i!"e(Bsparc e$B4D6-$G$O!"0z?t$Ne(Bint e$B$Oe(B long
e$B$KId9f3HD%$5$l$k$h$&$G$9!#e(B
(e$B;29MJ88%e(B:
http://sdc.sun.co.jp/solaris/tools/private/amd64_migration.html )

e$BI8=`4X?te(B int putchar(char) e$B$K$F3NG’$7$?$H$3$m!"e(Bchar
e$B$bF1MM$Ke(B long
e$B$K3HD%$5$l$k$N$G!"e(Bshort e$B$b$*$=$i$/[email protected]$H;W$$$^$9!#e(B
float e$B$,e(B double e$B$K3HD%$5$l$k$+$I$&$+$O3NG’$G$-$F$$$^$;$s!#e(B
e$B$^$?!"e(Bsparce$B>e$Ne(BLinuxe$B$J$I!"e(BSolarise$B0J30$G$O$I$&$J$N$+$OL$3NG’$G$9!#e(B

sparce$B$N>[email protected]$1FCJL$Je(B PACK_MAP e$B$He(B SIZE_MAP
e$B$r;}$D$h$&$K$7$?%Q%C%A$re(B
e$B0J2<$KE:IU$7$^$9!#$3$N%Q%C%A$rEv$F$k$He(B dl
e$B$N%F%9%H$O$9[email protected]$7$^$9!#e(B
e$B!JCme(B:e$B:9J,$r>.$5$/$9$k$?$a%$%s%G%s%H$,>/!9$*$+$7$/$J$C$F$$$^$9!#e(B)

Index: ext/dl/lib/dl/stack.rb

— ext/dl/lib/dl/stack.rb (revision 24578)
+++ ext/dl/lib/dl/stack.rb (working copy)
@@ -61,6 +61,36 @@
TYPE_DOUBLE => ALIGN_DOUBLE,
}

  • case RUBY_PLATFORM

  • when /sparc/i

  •  PACK_MAP = {
    
  •    TYPE_VOIDP => ((SIZEOF_VOIDP == SIZEOF_LONG_LONG)? "q" : "l!"),
    
  •    TYPE_CHAR  => "l!",
    
  •    TYPE_SHORT => "l!",
    
  •    TYPE_INT   => "l!",
    
  •    TYPE_LONG  => "l!",
    
  •    TYPE_FLOAT => "f",
    
  •    TYPE_DOUBLE => "d",
    
  •  }
    
  •  SIZE_MAP = {
    
  •    TYPE_VOIDP => SIZEOF_VOIDP,
    
  •    TYPE_CHAR  => SIZEOF_LONG,
    
  •    TYPE_SHORT => SIZEOF_LONG,
    
  •    TYPE_INT   => SIZEOF_LONG,
    
  •    TYPE_LONG  => SIZEOF_LONG,
    
  •    TYPE_FLOAT => SIZEOF_FLOAT,
    
  •    TYPE_DOUBLE => SIZEOF_DOUBLE,
    
  •  }
    
  •  if defined?(TYPE_LONG_LONG)
    
  •    ALIGN_MAP[TYPE_LONG_LONG] = ALIGN_LONG_LONG
    
  •    PACK_MAP[TYPE_LONG_LONG] = "q"
    
  •    SIZE_MAP[TYPE_LONG_LONG] = SIZEOF_LONG_LONG
    
  •  end
    
  • else

  • PACK_MAP = {
    TYPE_VOIDP => ((SIZEOF_VOIDP == SIZEOF_LONG_LONG)? “q” : “l!”),
    TYPE_CHAR => “c”,
    @@ -86,6 +116,8 @@
    SIZE_MAP[TYPE_LONG_LONG] = SIZEOF_LONG_LONG
    end

  • end

  • def parse_types(types)
    @types = types
    @template = “”

e$B%A%1%C%He(B #1977 e$B$,99?7$5$l$^$7$?!#e(B (by Aaron P.)

e$B%9%F!<%?%9e(B Opene$B$+$ie(BClosede$B$KJQ99e(B

libffi e$B$Ge(B DL
e$B$rJQ49$7$^$7$?$N$G!"$b$&$3$NLdBj$O$J$$H&$G$9!#$7$+$7!";d$N<j85$Ke(B
sparc-solaris e$B$N%3%s%T%e!<%?!<$,$J$$$N$G!"e(Bsparc-solaris
e$B$G%F%9%H$O=PMh$^$;$s$G$7$?!#e(B

http://redmine.ruby-lang.org/issues/show/1977

On Wed, 3 Feb 2010 10:51:32 +0900
Aaron P. [email protected] wrote:

libffi e$B$Ge(B DL e$B$rJQ49$7$^$7$?$N$G!"$b$&$3$NLdBj$O$J$$H&$G$9!#$7$+$7!";d$N<j85$Ke(B sparc-solaris e$B$N%3%s%T%e!<%?!<$,$J$$$N$G!"e(Bsparc-solaris e$B$G%F%9%H$O=PMh$^$;$s$G$7$?!#e(B

libffi-3.0.9.tar.gz
e$B$r%@%&%s%m!<%I$7!"e(Bmakee$B$7$h$&$H$7$?$N$G$9$,!"e(B
libffi e$B$,e(B gcc e$BFH<+3HD%$Ne(B attribute
e$B$r;H$C$F$$$k$?$a$+!"e(B
Sun Workshop 5.8 (SunStudio 11) e$B$Ne(B cc
e$B$G$O%3%s%Q%$%k$G$-$^$;$s$G$7$?!#e(B

DLe$B$re(Blibffie$B0MB8$K$7$?$H$$$&$3$H$O!"e(BRubye$B$be(BGCCe$B$rMW5a$9$k$3$H$K$J$k$N$G$7$g$&$+!)e(B

e$B0J2<!"e(Blibffie$B$Ne(Bmakee$B;~$N%(%i!<$G$9!#e(B
“./include/ffi_common.h”, line 103: syntax error before or at:
attribute
“./include/ffi_common.h”, line 103: warning: old-style declaration or
incorrect type for: attribute
“./include/ffi_common.h”, line 103: warning: syntax error: empty
declaration
“./include/ffi_common.h”, line 104: syntax error before or at:
attribute
“./include/ffi_common.h”, line 104: warning: old-style declaration or
incorrect type for: attribute
“./include/ffi_common.h”, line 104: identifier redefined: attribute
current : function() returning int
previous: function() returning int : “./include/ffi_common.h”,
line 103
“./include/ffi_common.h”, line 104: warning: syntax error: empty
declaration
“./include/ffi_common.h”, line 105: syntax error before or at:
attribute
“./include/ffi_common.h”, line 105: warning: old-style declaration or
incorrect type for: attribute
“./include/ffi_common.h”, line 105: identifier redefined: attribute
current : function() returning int
previous: function() returning int : “./include/ffi_common.h”,
line 104
“./include/ffi_common.h”, line 105: warning: syntax error: empty
declaration
“./include/ffi_common.h”, line 106: syntax error before or at:
attribute
“./include/ffi_common.h”, line 106: warning: old-style declaration or
incorrect type for: attribute
“./include/ffi_common.h”, line 106: identifier redefined: attribute
current : function() returning int
previous: function() returning int : “./include/ffi_common.h”,
line 105
“./include/ffi_common.h”, line 106: warning: syntax error: empty
declaration
“./include/ffi_common.h”, line 107: syntax error before or at:
attribute
“./include/ffi_common.h”, line 107: warning: old-style declaration or
incorrect type for: attribute
“./include/ffi_common.h”, line 107: identifier redefined: attribute
current : function() returning int
previous: function() returning int : “./include/ffi_common.h”,
line 106
“./include/ffi_common.h”, line 107: warning: syntax error: empty
declaration
“./include/ffi_common.h”, line 108: syntax error before or at:
attribute
“./include/ffi_common.h”, line 108: warning: old-style declaration or
incorrect type for: attribute
“./include/ffi_common.h”, line 108: identifier redefined: attribute
current : function() returning int
previous: function() returning int : “./include/ffi_common.h”,
line 107
“./include/ffi_common.h”, line 108: warning: syntax error: empty
declaration
“./include/ffi_common.h”, line 109: syntax error before or at:
attribute
“./include/ffi_common.h”, line 109: warning: old-style declaration or
incorrect type for: attribute
“./include/ffi_common.h”, line 109: identifier redefined: attribute
current : function() returning int
previous: function() returning int : “./include/ffi_common.h”,
line 108
“./include/ffi_common.h”, line 109: warning: syntax error: empty
declaration
“./include/ffi_common.h”, line 110: syntax error before or at:
attribute
“./include/ffi_common.h”, line 110: warning: old-style declaration or
incorrect type for: attribute
“./include/ffi_common.h”, line 110: identifier redefined: attribute
current : function() returning int
previous: function() returning int : “./include/ffi_common.h”,
line 109
“./include/ffi_common.h”, line 110: warning: syntax error: empty
declaration
cc: acomp failed for src/debug.c

[email protected]@%$G$9!#e(B

2010/2/3 Naohisa GOTO [email protected]:

On Wed, 3 Feb 2010 10:51:32 +0900
Aaron P. [email protected] wrote:

libffi e$B$Ge(B DL e$B$rJQ49$7$^$7$?$N$G!"$b$&$3$NLdBj$O$J$$H&$G$9!#$7$+$7!";d$N<j85$Ke(B sparc-solaris e$B$N%3%s%T%e!<%?!<$,$J$$$N$G!"e(Bsparc-solaris e$B$G%F%9%H$O=PMh$^$;$s$G$7$?!#e(B

libffi-3.0.9.tar.gz e$B$r%@%&%s%m!<%I$7!"e(Bmakee$B$7$h$&$H$7$?$N$G$9$,!"e(B
libffi e$B$,e(B gcc e$BFH<+3HD%$Ne(B attribute e$B$r;H$C$F$$$k$?$a$+!"e(B
Sun Workshop 5.8 (SunStudio 11) e$B$Ne(B cc e$B$G$O%3%s%Q%$%k$G$-$^$;$s$G$7$?!#e(B

DLe$B$re(Blibffie$B0MB8$K$7$?$H$$$&$3$H$O!"e(BRubye$B$be(BGCCe$B$rMW5a$9$k$3$H$K$J$k$N$G$7$g$&$+!)e(B

e$B%F%9%H$"$j$,$H$&$4$6$$$^$9!#e(B

e$B6D$kDL$j!"e(BSun Studio 11 e$B$G$O%@%a$J$N$G$9$,!"e(BSun Studio 12
e$B$G$Oe(B libffi e$B$r%3%s%Q%$%k2DG=$J$h$&$G$9!#e(B
http://sourceware.org/ml/libffi-discuss/2010/msg00016.html
http://jp.sun.com/products/software/tools/studio12/documentation/ss12/whatsnew.html

e$B$^$?!"e(BPython e$BJ}LL$K$h$k$H!"4hD%$l$Pe(B 11 e$B$G$be(B
attribute e$B$NLdBj$O2sHr$G$-$k$h$&$G$9!#e(B
http://inside.ascade.co.jp/node/54

e$B0J>e$G8=<BLdBj$H$7$F2r7h2DG=$J$N$+$O$o$?$7$K$OH=CG$D$-$+$M$^$9$,!#!#e(B

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs