[H8-ML(882)] Re: Cでの割り込み/gcc
From: wakky@xxxxxxxxxxxxxxxxxxx
Date: 2000年11月30日(木)16時42分17秒
>「最近」(^_^) C++とかが出始めてからだと思うのですが、C++が出始
>めたのを「最近」と感じるようでは、私ももう年かもしれない・・・(^_^;
なるほど、C++ が出はじめてからでしたか。

>startupがらみのごたごたした処理が落ち着くまでは結
>構苦労させられますね。
今年の前半に新しいCコンパイラで仕事をしていたのですが、
「面倒くさいから、startup を使わないようなコードを書いちゃえ」
という方針でコーディングして、えらい目に会ってしまいました(^^;)
toupper とか、isdigit が全然動かないんです。
調べてみたら、このコンパイラ付属のライブラリの ctype.h 関連で使って
いるテーブルが RAM に展開されてました。
ここら辺のテーブルは、テキスト領域に展開されるもんだとばかり
思っていたのに...
その後、ちゃんとした startup を使うようにしました(^^;)。

>(昨日もStackが大域変数エリアまで上がって言ったこと
>が原因のバグにはめられて、徹夜しました)
わたしも上記のコンパイラを使っていて
stack overflow で苦労させられました(^^;)

void foo( void )
{
    const char* const RegName[] = {
          "r0  "
        , "r1  "
        , "r2  "
            .
            .
        , "r31 "
        , NULL
    } ;

と記述したところ、RegName[]が、スタックに取られてしまい、
スタックオーバーフローになっていました。
ICE 無しで開発を進めていたため、気づくのに3日ほどかかって
しまいました(^^;)。

--
--------- Computer Artisan ---------------------------
シーエー  寺脇 勝彦
E-mail wakky@xxxxxxxxxxxxxxxxxxx       HGB01644@xxxxxxxxx
My page  http://www.computerartisan.com/
スレッド概略
[869(R)](起点)
 └[880(U)]
   └[表示中]
     └[883(1)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]