Entry No.
114
|
コンパイラ
コンパイラが END. の後の {$R ... } を解釈してしまう
|
1.02 |
2.01 |
3.0 |
3.01 |
3.02 |
4.0 |
4.01 |
4.02 |
4.03 |
5.0 |
5.01 |
6.0 |
6.01 |
6.02 |
Kylix 1.0 |
N/A |
Gotcha |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
Unknown |
|
(訳注:5.01 日本語版では fixed でした)
|
解説
|
|
これはバグではなく、過去の TP/BP/DELPHI の全てのバージョンにおいて明文化されていなかった機能の喪失です。過去の全てのコンパイラは、"END." の直後に解釈を停止していました。そのため、コードの一部をコピーしてファイルの末尾に貼り付けてローカルのバックアップを持つことが出来ていました。今でもコンパイラは最初の "END." までしかコンパイルはしませんが、{$R ....} を見つけるためにファイルの残りの部分をさらに検索します。その結果、それがリンク時に取り込まれるため、DUPLICATE RESOURCE のリンクエラーになります。
|
|