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

**URL:** <https://www.ruby-forum.com/t/bug-1977-test-failed-in-test-isdigit-in-test-dl-test-func-rb-on-sparc-solaris-2-10-64bit/174168>\
**Category:** Development\
**Created:** [August 21, 2009, 5:22pm UTC](https://www.ruby-forum.com/t/bug-1977-test-failed-in-test-isdigit-in-test-dl-test-func-rb-on-sparc-solaris-2-10-64bit/174168 "2009-08-21T17:22:11Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Naohisa\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f4b2a3/32.png) [@Naohisa\_G](https://www.ruby-forum.com/u/Naohisa_G)\
**Post date:** [August 21, 2009, 5:22pm UTC](https://www.ruby-forum.com/t/bug-1977-test-failed-in-test-isdigit-in-test-dl-test-func-rb-on-sparc-solaris-2-10-64bit/174168/1 "2009-08-21T17:22:11Z")

</div>

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](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!\<%kDI@W%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(Bisdigite$B4X?t$N8F$S=P$7$rDI@W$7$?$H$3$m!"e(B

(e$BA0N,e(B)  
DL::TestFunc#test\_isdigit: /1@1: → libc:isdigit(0x3100000000,  
0xc, 0xffffffffffffffff, 0xfffffffffffffff8)  
/1@1: ← libc:isdigit() = 0  
/1@1: → libc:isdigit(0x3200000000, 0xc, 0xffffffffffffffff,  
0xfffffffffffffff8)  
/1@1: ← libc:isdigit() = 0  
/1@1: → libc:isdigit(0x7200000000, 0xc, 0xffffffffffffffff,  
0xfffffffffffffff8)  
/1@1: ← libc:isdigit() = 0  
0.01 s: F  
(e$BCfN,e(B)  
DL::TestImport#test\_isdigit: /1@1: → libc:isdigit(0x3100000000,  
0xc, 0xffffffffffffffff, 0xfffffffffffffff8)  
/1@1: ← libc:isdigit() = 0  
/1@1: → libc:isdigit(0x3200000000, 0xc, 0xffffffffffffffff,  
0xfffffffffffffff8)  
/1@1: ← libc:isdigit() = 0  
/1@1: → libc:isdigit(0x7200000000, 0xc, 0xffffffffffffffff,  
0xfffffffffffffff8)  
/1@1: ← 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](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$/F1MM$@$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\>l9g$@$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$Y$F@.8y$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 = “”

---

<div class="post-metadata">

**Author:** ![Naohisa\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f4b2a3/32.png) [@Naohisa\_G](https://www.ruby-forum.com/u/Naohisa_G)\
**Post date:** [February 3, 2010, 2:57am UTC](https://www.ruby-forum.com/t/bug-1977-test-failed-in-test-isdigit-in-test-dl-test-func-rb-on-sparc-solaris-2-10-64bit/174168/2 "2010-02-03T02:57:45Z")

</div>

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](http://redmine.ruby-lang.org/issues/show/1977)

---

<div class="post-metadata">

**Author:** ![Naohisa\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f4b2a3/32.png) [@Naohisa\_G](https://www.ruby-forum.com/u/Naohisa_G)\
**Post date:** [February 3, 2010, 5:54am UTC](https://www.ruby-forum.com/t/bug-1977-test-failed-in-test-isdigit-in-test-dl-test-func-rb-on-sparc-solaris-2-10-64bit/174168/3 "2010-02-03T05:54:34Z")

</div>

On Wed, 3 Feb 2010 10:51:32 +0900  
Aaron P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) 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

---

<div class="post-metadata">

**Author:** ![Naohisa\_G](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/n/f4b2a3/32.png) [@Naohisa\_G](https://www.ruby-forum.com/u/Naohisa_G)\
**Post date:** [February 3, 2010, 8:13am UTC](https://www.ruby-forum.com/t/bug-1977-test-failed-in-test-isdigit-in-test-dl-test-func-rb-on-sparc-solaris-2-10-64bit/174168/4 "2010-02-03T08:13:49Z")

</div>

e$B@.@%$G$9!#e(B

2010/2/3 Naohisa GOTO [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid):

> On Wed, 3 Feb 2010 10:51:32 +0900  
> Aaron P. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) 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://sourceware.org/ml/libffi-discuss/2010/msg00016.html)

> **[Oracle |クラウド・アプリケーションとクラウド・プラットフォーム](https://www.oracle.com/jp/)**
>
> オラクルは、クラウド・アプリケーションとプラットフォーム・サービスにおける包括的で完全に統合されたスタックを提供しています。

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](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
