1. ホーム
  2. c

[解決済み] 警告 ISO C は空の翻訳単位を禁じています

2022-02-13 17:04:42

質問

ヘッダーファイルに以下のようなコードがあり、リンクを張ろうとするとタイトルのようなエラーが発生します。

#ifndef BOOLEAN_H
#define BOOLEAN_H

#ifndef FALSE
#define FALSE 0
#endif

#ifndef TRUE
#define TRUE !FALSE
#endif

#endif

indicating the error occurs in the line of the last #endif 

解決方法は?

gcc でコンパイルした場合 -pedantic は、C 規格で要求されているように、翻訳単位が空である場合に診断を報告します。を作るには gcc をハッピーにするには、ダミーの typedef を、空の .c ファイルを作成します。

typedef int make_iso_compilers_happy;

または

extern int make_iso_compilers_happy;