PIC32コンパイラv2.02で問題が発生しました。次のようにエラー:[関数]より前に '='、 '、'、 ';'、 'asm'または '__attribute __'が返される
コンパイラは型BOOLを定義しています
typedef enum _BOOL { FALSE = 0, TRUE } BOOL; // BOOL Type
私はそうのようなのfuctionで列挙値の1を返すようにしたい:私は私のコードをコンパイルするとき
BOOL
MyFunction(void)
{
if(PortAvailable())
{
return TRUE;
}
else
{
return FALSE;
}
}
私はこれを取得しますエラーは、 "MyFunctionを" にpretaining:
error: expected '=', ',', ';', 'asm' or '__attribute__' before 'MyFunction'
私は、バージョン1からの私のコンパイラをアップグレードしています.05からバージョン2.02まで、BOOLの独自のtypedefを作成しました。コードはバージョン2.02を使用する前にうまくいきました。 (はい、BOOLのtypedefをコードから削除しました)。私はそうのような機能をdelcare場合、私は非常に奇妙見つける
何かがある:
enum BOOL
MyFunction(void)
{
if(PortAvailable())
{
return TRUE;
}
else
{
return FALSE;
}
}
コンパイラは上記の私にエラーを与えるものではありません。私は列挙されたBOOLを正しく使用していますか、誰かが私が行方不明のステップを知っていますか?
コード内の 'MyFunction'定義の直前のものは何ですか? – jwodder
voidを返す他の関数** void Initialize(void); ** これらのエラーは、常にメインのcファイルではなくヘッダーファイルを参照していることを忘れています。 –
エラーがヘッダーファイルで発生している場合、ここに示したコードでエラーは発生していませんでしたか?エラーを生成している実際のコードを投稿してください。 – jwodder