spacer spacer spacer spacer spacer
head01 head02
head03
head04 head05 head06 spacer spacerContact Us
menu00
趣意書
ten_b
ニュース
ten_c
イベント
ten_c
技術ドキュメント
ten_c
研究プログラム資料
ten_c
業界各社のコメント集
ten_c
事例WG活動
ten_c
言語WG活動
ten_c
会員登録
ten_c
会員リスト
ten_c
会則
ten_c
賛同メンバー
ten_c
お断り
ten_c
ten_c
ten_c
spacer
一覧に戻る

SpecC リファリンスコンパイラV1.2 のリリース
spacer
spacer
2002.01.03


2002年1月3日 SpecC リファレンスコンパイラ(SCRC)、バージョン1.2.がリリースされました。

SCRC リリース1.2 は次の新しい機能を備えたものです。

改良点:
詳細:

●Cygwin 環境でWindowsプラットフォームをサポートします
 -
Windows 95/98/ME と Windows NT/2000/XP プラットフォーム用の、新たな二種類のディストリビューションが行われます。
 -
Windows 用のサポートは、自由に使えるWindowsのUNIX環境である、Cygwinプロジェクトで可能となります。
 -
Cygwin 環境については下記の情報を参照してください
http://sources.redhat.com/cygwin/
 -
Windows特有のスレッドサポートがシミュレータに加わりました。

●コードジェネレータへの主なる改良点は読みやすさとデバックのしやすさです
 -
SpecC と C++ のコードジェネレーションを全面的に改定し、短くてクリーンなコードが生成でき、読みやすさとデバックのしやすさが実現されました。
 -
コードは入力した順どおりに生成されるようになりました。
 -
コードは指定どおりの入れ子レベルで生成されます。(これはコンパイラの新しいオプション-st、-sTによって達成されます)
 -
長い行(ライン)にたいする行ラッピングも行われます (これはコンパイラのオプション -swで行われます)
 -
"みにくい" SpecC コードに対しては、SCRC をコードフォーマッタとして使えます。次の例でためしてください:
  "scrc <ugly_code> -sc2sc -sl -o <nice_code>"

●ANSI C++ 互換性を向上させました
 -
SCRC ソースコードは更に ANSI C++ 準拠となり、多くの 'gcc' 特有フィーチャーを排除しました。
 -
'bit' クラスと 'longlong' クラスが完全に改定され、C++ のオーバーロードした場合の精度のあいまいさを排除しました。
 -
関数パラメタのデフォルト引数は、ANSI基準に沿って関数宣言でのみ示すことになりました。
 -
SCRC は gcc オプションの "-ansi -pedantic"できれいにコンパイルします。(しかし、GNUコンパイラのバグのために、オプティマイゼーション -O2 はgcc 3.0.xでは使えません)

●コンパイラのフロントエンドで、セマンテックスのチェックを強化しました
 -
'notify' や 'wait' といった文によるポートのアクセスでは、セマンテックスがチェックされます。
 -
ストリング定数による 'char[]'  変数の初期化がチェックされます。

●いくつかの(重大な)バグを直しました
 -
配列型の未使用ポートも正しい C++ コードを作れるようになりました。
 -
ビットベクタのシフトおよび連結が正しくなされるようになりました。
 -
パイプのビットベクタが正しく初期化されるようになりました。
 -
関数 ubit2str() は2以外のベースで正しく働きます。
 -
空のソースファイルも正しい入力として受け付けられます。

●以上の他にも、多くのマイナーな改良を加えました


従来どおり、SCRC のソースとバイナリパッケージは下記のwebページから自由にダウンロードできます:

http://www.cecs.uci.edu/~specc/reference/

go_top


spacer