-
Error Messages
提供: HI-TECH C for CP/M Fan WIKI(JP)
コンパイラから生成されるエラーメッセージは以下の通りです。どのメッセージもそれを生成したプログラム名と、あるものは、何が原因だったかのメッセージや、それについてどうすればいいかといったさらに細かい記述があります。
.
- '.' expected after '..' P1
- 省略シンボルはドットを三つもたなければいけません。
A
- actuals too long CPP
- マクロ引数の長さを減らします。
- argument list conflicts with prototype P1
- 関数定義の引数リストはプロトタイプが存在している場合、対応している必要があります。
- argument redeclared P1
- この引数は二回定義されました
- arithmetic overflow in constant expression CGEN
- 定数の式(エクスプレッション)が算術的なオーバーフローを起こす評価です。これは本当のエラーである場合とそうでない場合があります。
- array index out of bounds P1
- 配列インデックスの式(エクスプレッション)がゼロ以下になるか、配列の次元と同じかそれ以上になる評価です。
- Assertion CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- attempt to modify const object P1
- '定数'に指示されたオブジェクトがアサイン、もしくは変更されようとしました。
B
- bad bitfield type P1
- ビットフィールドは'int'型でなければいけません。
- Bad conval CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- Bad dimensions CGEN
- 配列の次元が不正です。おそらく0次元です。
- Bad element count expr CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- bad formal CPP
- マクロ定義の書式を確認してください
- bad include syntax CPP
- ""と<>だけをインクルードフィールドで使用してください。
- Bad int. code CGEN
- 中間コードファイルが壊れています。これはディスク容量不足で引き起こされる可能性があります。
- Bad -M option CGEN
- コードジェネレータに渡された-Mオプションが不明です。
- Bad mod '+' for how = c CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- bad object code format LINK
- このファイルは壊れているか、正しいオブジェクトファイルではありません。
- Bad op d to swaplog CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- Bad op n to revlog CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- bad origin format in spec LINK
- -pオプションで渡されたアドレスが不正です。
- bad '-p' format LINK
- -pオプションが不正です。
- Bad pragma c CGEN
- コードジェネレータに良くわからないプラグマが渡されました??
- Bad putwsize CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- bad storage class P1, CGEN
- 指定されたストレージクラスが不正です。
- Bad U usage CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- Bit field too large (n bits) CGEN
- ビットフィールドがintよりも大きいです。
C
- Cannot get memory LINK
- リンカはダイナミックメモリが不足しています。
- Can't be both far and near P1
- 'far'と'near'キーワードが同じ型指定子の中に現れてはいけません。
- can't be long P1
- charとshortはlongにできません。
- can't be register P1
- 外部変数やスタティック変数はレジスタにできません??
- can't be short P1
- floatとcharはshortにできません。
- can't be unsigned P1
- floatは符号なしにできません。
- can't call an interrupt function P1
- 'interrpt'の関数はハードウェアからだけでは呼び出せません。一般的でないコールです。
- Can't create filename CGEN
- 指定されたファイルは作成できません。
- Can't create xref file P1
- 指定されたクロスリファレンスファイルが作成できません。
- Can't create CPP
- 出力ファイルが作成できません。
- Can't create LINK
- リンカがファイルを作成できません。
- Can't find include file CPP
- インクルードするファイル名を確認して修正してください。ファイル名にスペースは使用できません。
- Can't find register for bits CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- Can't generate code for this expression CGEN
- コードジェネレータはこの式(エクスプレッション)のコードを生成できません。式(エクスプレッション)を単純化(変数を一時変数に変更するなど)することで普通は修正できます。それ以外の場合は、HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- can't have array of functions P1
- 関数の配列を持つことはできません。関数のポインタの配列であれば持つことができます。
- Can't have 'port' variable CGEN
- 'port'の限定子の変数を定義することはできません。portはポインタか、定数の型変換でしか使えません??
- can't have storage class P1
- ストレージクラスはプロトタイプ引数の中で現れることができません。
- can't initialise auto aggregates P1
- スタティックでない関数の中で構造体や配列をイニシャライズすることはできません。
- can't initialize arg P1
- 引数はイニシャライザを持つことができません。
- can't mix proto and non-proto args P1
- プロトタイプとプロトタイプでない引数を関数定義の中で混ぜることはできません??
- Can't open filename CGEN
- 指定されたファイルは読み出しのためにオープンできません。
- Can't open LINK
- リンカはファイルをオープンできません。
- Can't seek LINK
- リンカはファイル内を検索することはできません。
- can't take address of register variable P1
- レジスタ内の変数のアドレスを取ることはできません。
- can't take sizeof func CGEN
- 関数のサイズを取ることはできません。ファンクションコールのサイズであれば取ることができます。
- can't take this address P1
- 式(エクスプレッション)はアドレスを持っていません。
- 'case' not in switch P1
- A 'case' label is permitted only inside a switch
'case'ラベルはスイッチ内でしか許可されていません。
- char const too long P1
- 文字定数は一文字しか内部に持てません。
- close error (disk space?) P1
- おそらくディスク容量が不足しています
- common symbol psect conflict LINK
- 共通シンボルが一つ以上のPSECTで定義されています。
- constant conditional branch CGEN
- while(1)のような定数式をテストするプログラム構造体??があります??これには十分な(;;)を代用する必要があります??
- constant expression required P1
- 配列の次元には定数式が必要です??。
- constant operand to || or && CGEN
- 論理演算子が最適化から漏れた??定数の被演算子を持ちます。
D
- declarator too complex P1
- この定義はコンパイラが扱うには複雑すぎます。
- default case redefined P1
- スイッチ内では一つのデフォルトケースだけが許可されています。
- 'default' not in switch P1
- 'default'ラベルはスイッチ内でのみ許可されています。
- digit out of range P1
- 8進数定数は7、8を含んではいけません??。10進数はA-Fを含んではいけません。
- dimension required P1
- 配列定義では最も顕著な例外は、次元が要求されることです????
- Division by zero CGEN
- この式(エクスプレッション)はゼロを割り算しようとしました。
- Duplicate case label n CGEN
- このスイッチでは同じ値を持つ二つのラベルが存在します。
- Duplicate -d flag LINK
- リンカでは一つのみ-dが許可されています。
- duplicate label P1
- このラベルは二回定義されています。
- Duplicate -m flag LINK
- リンカは一つの-mフラグのみが許可されています。
- duplicate qualifier P1
- 型指定で一回以上の同じ指定子が現れています。
E
- entry point multiply defined LINK
- プログラムは一つだけエントリポイント(スタートアドレス)を持てます
- EOF in #asm P1
- #asmの後で#endasmの前にEOFがあります。
- Error closing output file CGEN,CPP
- おそらく、ディスクの容量が足りません。
- excessive -I file ignored CPP
- -Iオプションを減らしてください。
- expand - bad how CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- expand - bad which CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- exponent expected P1
- べき数が浮動小数点数の'e'や'E'の後に期待されています。べき数は+、-、0-9の数字しか含むことができません。
- Expression error CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- expression generates no code CGEN
- この式にはサイドエフェクトがないため、コードを生成しません。オプティマイザで最適化されました。
- expression syntax P1
- 式の形式が良くありません。
- expression too complex P1
- この式にはネストした括弧やネストした構造体が多すぎます。
F
- Fixup overflow referencing LINK
- リンカはPSECTもしくはシンボルへのリファレンスをリロケートしましたが、リロケートされたアドレスはスペースに対して大きすぎます。例えば、1バイトアドレスが256を越えたり、16bitアドレスが65536を越えてリロケートされる場合です。
- float param coerced to double P1
- このfloatパラメータはdoubleに変換されました。プロトタイプはこの強制をオーバーライドします??
- function() declared implicit int P1
- この関数は正確な定義なしに呼び出されました。できればプロトタイプを使って、すべての関数を正確に定義するのが賢い方法です。これは一つ以上のソースファイルで構成されるプログラムでの多くの潜在的なエラーの回避に役立ちます。
- function does not take arguments P1
- この関数へのプロトタイプが引数を取っていません。
- function or function pointer required P1
- 関数識別子、もしくは関数へのポインターはファンクションコールが必要です。
- functions can't return arrays P1
- 関数は配列を返すことができません。配列へのポインタであれば可能です。
- functions can't return functions P1
- 関数は関数を返すことができません。関数へのポインタであれば可能です。
H
- hex digit expected P1
- 16進数は'0x'の後に書いてください。
I
- identifier is a structure tag P1
- 他の種類のタグが期待されるコンテキスト内で構造体タグが使用されました。例えば共用体fredとしてそれ以前に定義されたものが、構造体fredとされる、などです。
- identifier is a union tag P1
- 上記エラーと同様です
- identifier is an enum tag P1
- 上記エラーと同様です
- identifier: large offset CGEN
- Z80限定です。この識別子はスタックフレームからのlargeオフセットを持っており??これへのアクセスは無効です??関数内の配列のは単純な変数のあとに定義しなくてはいけません。
- identifier redeclared P1
- 識別子が別の属性で再定義されました
- identifier redefined P1
- 識別子が2回定義されました。
- If-less else CPP
- #ifの使い方を確認してください
- If-less endif CPP
- #ifの使い方を確認してください
- illegal '#' directive P1
- 最初のパスで渡された#ディレクティブが不明です。
もし、これが#includeで起きた場合、以前のインクルードファイルが最後の行で<CR><LF>やnewlineを持たないのが原因です。
- Illegal character in preprocessor if CPP
- おかしい文字のチェックをしてくだhttp://tulip-house.ddo.jp/digital/senshi/senshi.html。
- illegal character P1
- コンパイラに与えられた未知の文字に遭遇しました。与えられた値が文字の8進数値です。
- illegal conversion between pointer types P1
- この式(エクスプレッション)が、ポインタ型を他の互換性のない型に変換させています??
- illegal conversion of integer to pointer P1
- ポインタが期待されているところで整数が使われました。
- illegal conversion of pointer to integer P1
- 整数が期待されているところで、ポインタが使われました。
- illegal conversion P1
- ここでの型変換は不正です。
- Illegal flag LINK
- このオプションは不正です。
- illegal function qualifier(s) P1
- 関数は'const'を持てません??
- illegal initialisation P1
- この変数の初期化は不正です
- Illegal number CPP
- 数値の書式を確認してください。
- illegal type for array dimension P1
- 配列の次元は整数でなければいけません。
- illegal type for index expression P1
- 配列インデックスは単純な整数式でなければいけません。
- illegal type for switch expression P1
- 'switch'内の式は整数でなければいけません。
- illegal use of void expression P1
- void式が使われません。
- implicit conversion of float to integer P1
- 浮動小数点の値が整数に変換されました。値の切り詰めが起きる可能性があります。
- implicit return at end of non-void function P1
- void型でない関数がreturnのない応答をしました。
- implict signed to unsigned conversion P1
- 望まれない符号の拡張が起きています。お望みの通りのただしい変換をするために、正確な型変換を強制してください。
- inappropriate break/continue P1
- inappropriate 'else' P1
- 対応する'if'のない'else'があります。
- inconsistent storage class P1
- 定義内にストレージクラスが1つだけ指定されています。
- inconsistent type P1
- 定義内に基本型が1つだけ指定されています。
- initialisation illegal in arg list P1
- 関数パラメータは初期化できません
- initialisation syntax P1
- この初期化の書式が不正です
- initializer in 'extern' declaration P1
- 'EXTERN'キーワードと共に定義されているものはイニシャライザです。これは保存領域をリザーブしない外部定義として許可されていません。
- integer constant expected P1
- ここではINT定数が期待されています。
- integer expression required P1
- ここではintの式が必要です。
- integral type required P1
- ここではINT型が必要です。
L
- large offset CGEN
- Z80のみ。識別子はスタックフレームがlargeオフセットをもつため、これへのアクセスは不十分です??関数内では、どの単純な変数のあとでも、何かしらの配列を定義する必要があります??
- Line too long P1
- ソースの行が長すぎます。もしくは行末に<CR><LF>やnewlineがありません。
- local psect conflicts with global psect of same name LINK
- ローカルPSECTはグローバルPSECTと同じ名前を持てません。
- logical type required P1
- 条件式の対象として、論理型(整数型のような)が必要です。
- lvalue required P1
- lvalue、つまりアサインされるものは、 '&' の後、もしくはアサインの左側にある必要があります??
M
- macro recursion CPP
- プリプロセッサマクロが自分自身を拡張しようとしました。これは無限再起を起こします。
- member is not a member of the struct/union P1
- このメンバは使用されている構造体、もしくは共用体のメンバではありません。
- members cannot be functions P1
- メンバは関数にはなれません。関数ポインタにはなれます。
- Missing arg to -u LINK
- -uは引数が必要です。
- Missing arg to -w LINK
- -wは引数が必要です。
- missing ) CPP
- 式(エクスプレッション)に正しい ) を入れてください。
- Missing number after % in -p option LINK
- -pオプションの%の後には数字が必要です。
- Missing number after pragma 'pack' P1
- </nowiki>のnには1,2,4が入るのが正しい書式です。
- module has code below file base LINK
- -Cオプションが指定されましたが、プログラムはバイナリファイルのベースに指定されたアドレスよりも低位にコードを持ちます。
- multiply defined symbol LINK
- シンボルが1回以上定義されました。
N
- name is a union, struct or enum P1
- 共用体、構造体、列挙型タグ??が他のコンテクストで再利用されました。
- No case labels CGEN
- このスイッチにはケースラベルがありません。
- no identifier in declaration P1
- この定義内には識別子が必要です。
- No room CGEN
- コードジェネレータはダイナミックメモリが不足しています。シンボルの数を減らしたり、式(エクスプレッション)を単純化してください。
- No source file CPP
- ソースファイルが見つかりません。スペルやディレクトリパスなどをチェックしてください。
- no space CPP
- マクロ定義の数かサイズを減らしてください。
- no start record
- entry point defaults to zero LINK
- プログラムのスタートアドレスが指定されませんでした。リンカはスタートアドレスを0に設定しました。
- Non-constant case label CGEN
- このケースラベルは整数の定数を評価しません??
- non-void function returns no value P1
- 値を返さなければいけない関数が、値を持たない'return'ステートメントを持っています。
- not a variable identifier P1
- この識別子は有効ではありません。これは、ラベルや構造タグです。
- not an argument P1
- この識別子はこの関数用の引数リストに入っていません
O
- only functions may be qualified interrupt P1
- 'interrupt'型の限定子は変数でなく、関数にのみ適用できます。
- only functions may be void P1
- voidに指定できるのは変数でなく、関数のみです。
- only lvalues may be assigned to or modified P1
- 格納位置の特定できない式(エクスプレッション)に対して変更しようとしました。
- only register storage class allowed P1
- autoかregisterのみパラメータになれます。
- operands of operator not same pointer type P1
- 式(エクスプレッション)内で名付けられたオペレータに対するオペランドが、同じポインタ型ではなく、両方がポインタです??
- operands of operator not same type P1
- 式(エクスプレッション)内で名付けられたオペレータに対するオペランドが、互換性のない型です。
P
- pointer required P1
- (間接的な)'*'オペレータの後にはポインタが必要です。
- popreg - bad reg CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- portion of expression has no effect CGEN
- この式(エクスプレッション)の部分が値やサイドエフェクト??に何の影響も持ちません??
- probable missing '}' in previous block P1
- 式(エクスプレッション)が期待されているところで定義に遭遇しました。よくある理由はこのポイントよりも上の関数で、閉じる'}'が抜けていることです。
- psect cannot be in classes a and b LINK
- PSECTだけではクラス内に存在できません。
- psect exceeds max size LINK
- このPSECTは指定された最大サイズ以上です。
- psect is absolute LINK
- このPSECTは絶対的なので、-Pオプションでリンクアドレスを指定できません。
- Psect not loaded on 0xhexnum boundary LINK
- このPSECTは0x16進数の境界にロードする必要があります。
- Psect not relocated on 0xhexnum boundary LINK
- このPSECTは0x16進数の境界にリンクされなければいけません。
- psect origin multiply defined LINK
- このPSECTは1度以上定義されたリンクアドレスを持っています。
- pushreg - bad reg CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
R
- redundant & applied to array P1
- 配列型に'&'演算子が適用されました。配列の使用では暗黙的にアドレスが与えられるため、無視されました。
- regused - bad arg to G CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
S
- signatures do not matchLINK
- 外部関数が不正なプロトタイプと共に定義されました。例えば、引数が外部定義でlongに定義されても、実際はintである場合、シグネチャの不一致が起こります。
- signed bitfields not supported P1
- 符号なしのビットフィールドのみがサポートされています。
- simple type required P1
- 配列や構造体タイプはここでは使用できません。
- Sizeof yields 0 CGEN
- オブジェクトのサイズが、不正なコンテクスト内でゼロに評価されました。長さゼロのポイントがインクリメントされる、などです。
- storage class illegal P1
- ストレージクラスをここで定義してはいけません。
- struct/union member expected P1
- 'a'もしくは '->'の後に構造体か共用体のメンバが必要です。
- struct/union redefined P1
- 構造体、もしくは共用体が二回定義されています。
- struct/union required P1
- 構造体、もしくは共用体の識別子が'.'の前に必要です。
- Switch on long! CGEN
- 長い式(エクスプレッション)のスイッチングはサポートされていません??
- symbol cannot be global LINK
- スタック、ファイル名、行数シンボルはグローバルにできません。
- Syntax error in checksum list LINK
- 与えられたチェックサムリストが不正です。
T
- token too long CPP
- トークン(識別子など)を短くしてください。
- too few arguments P1
- この関数のプロトタイプには与えられた以上の関数がリストアップされています。
- too many arguments P1
- この関数用のプロトタイプにリストされているよりも、多くの引数が与えられています。
- Too many cases in switch CGEN,P1
- このスイッチのケースが多すぎます。
- too many -D options CPP
- -Dオプションを減らしてください。
- too many defines CPP
- マクロ定義を減らしてください。
- Too many errors CGEN
- CGENはエラーが多すぎる為、停止しました。
- too many formals CPP
- このマクロ定義に対するパラメータ数を減らしてください。
- Too many initializers CGEN
- オブジェクトに対するイニシャライザが多すぎます。
- Too many psects LINK
- シンボルテーブルに対するPSECTが多すぎます。
- Too many symbols LINK
- リンカシンボルテーブルにシンボルが多すぎます。
- too many -U options CPP
- -Uオプションを少なくしてください。
- too much defining CPP
- マクロの数やサイズを減らしてください。
- too much indirection P1
- この定義の中には'*'が多過ぎます。
- too much pushback CPP
- マクロの使い方を単純化してください。
- type conflict P1
- この式(エクスプレッション)の中にコンフリクトがあります。例えば、構造体を単純な型にアサインしようとした、などです。
- type specifier reqd. for proto arg P1
- プロトタイプ引数は基本型でなければいけません。
U
- undefined control CPP
- #の使い方を確認してください
- undefined enum tag P1
- この列挙型タグは定義されていません
- undefined identifier P1
- この識別子は使用前に定義されていません
- undefined struct/union P1
- 構造体、もしくは共用体が定義されていません
- undefined symbol LINK
- 未定義のシンボルのリスト一覧です。リンクされるライブラリ中にいくつかのシンボルがある場合、ライブラリの順序によってはこれが起こります。その場合、正しい順序で、もしくはLINKコマンドで一回以上ライブラリを指定してください。
- unexpected EOF P1
- C構造体の中間でEnd of Fileに遭遇しました。これはたいていの場合、プログラムの早い段階で '}' が抜けていることによります。
- Unknown predicate CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- unknown psect LINK
- -pオプションで指定されたPSECTがプログラム内に存在しません。スペルや大文字、小文字をチェックしてください。大文字は小文字にマッチしません。
- unreachable code P1
- このセクションのコードは、そこに至る経路がないので実行されません。
- Unreasonable include nesting CPP
- インクルードファイル数を減らしてください
- Unreasonable matching depth CGEN
- 内部エラーです。HI-TECHに連絡してください[訳注:HI-TECH C for CP/Mは公式サポートのないバージョンですので、連絡しないでください]
- unterminated macro call CPP
- おそらく )がありません。
V
- void function cannot return value P1
- 値を返さないvoid関数を定義しました
W
- Write error (out of disk space?) LINK
- おそらくディスクがいっぱいだということを意味します