[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[fol] Re: Incorrectly built binary which accesses errno or h_errno directly. Needs to be fixed. を消すに は?


河野真治 @ 琉球大学情報工学です。

In article <m3d5vs2ys1.fsf@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx>, MAEDA Atusi <maeda-news@xxxxxxxxxxxxxxxxxxxxxx> writes
> 最近はgccで、
>     extern int __thread errno;
> という表記法がサポートされて、これを使うと直接thread specific storage
> (thread local storage; TLS)を参照する機械語が出るそうです(関数呼び出し
> はしない)。ライブラリはこれを使って書いてある(アプリで__threadを使える
> ようにするには、ライブラリもそう書かないといけない)。従ってライブラリ
> がグローバルなerrnoを見に行くようにはできなくなった、という事のようで
> す。

なるほど、このあたりが元凶なのね。でも、それでも、errno っていう
大域ラベルとは干渉しないはずですよね。

> # まあ、「errnoを変数と思っちゃダメ」になってから15年も経つのだから、
> # いいかげん直ってるだろ、と。

Linux 的に閉じた話なら、それでもいいんだろうけど... 

このSynopsys toolって2003年6月の版でも、そうなんで、直す気は
ないみたいですね。そもそも、この手のCADツールは、専用にSun買
って動かすのが当り前みたいなところがあるので、Linux 側の対処
が手薄なのは仕方がない。まだ、動くから許せるってところですね。

---
Shinji KONO @ Information Engineering, University of the Ryukyus
河野真治 @ 琉球大学工学部情報工学科

$B$3$N>pJs$,$"$J$?$NC5$7$F$$?$b$N$+$I$&$+A*Br$7$F$/$@$5$!#(B
yes/$B$^$5$K$3$l$@!*(B   no/$B0c$&$J$!(B   part/$B0lIt8+$D$+$C$?(B   try/$B$3$l$G;n$7$F$_$k(B

$B$"$J$?$,C5$7$F$$?>pJs$O$I$N$h$&$J$3$H$+!"$4<+M3$K5-F~2<$5$!#FC$K!V$^$5$K$3$l$@!*!W$H8@$&>l9g$O5-F~$r$*4j$$7$^$9!#(B
$BNc(B:$B!VJ#?t$N%^%7%s$+$i(BCATV$B7PM3$G(Bipmasquerade$B$rMxMQ$7$F(BWeb$B$r;2>H$7$?$>l9g$N@_Dj$K$D$$F!W(B
Follow-Ups: References: