-1

これは私のコードの一部です:

Type* compileExpression2(void) {
    Type* type1;
    Type* type2;
    type1 = compileTerm();
    type2 = compileExpression3();
}

Type* compileExpression3(void) {
    Type* type1;
    return type1;
}

Type* compileTerm(void) {
    // TODO: check type of Term2
    Type* type;
    type = compileFactor();
    compileTerm2();
    return type;
}

Code :: Blocksを使用してビルドしましたが、次のエラーが返されました:

void値は無視されるべきではないので無視されません

行で:

type2 = compileExpression3();

どうしてか言ってくれない。


たくさんのご回答ありがとうございました。私は自分の問題を発見しました。

私のインクルードファイルにありますが、compileExpression3は「voidcompileExpression3(void);」として宣言されていました。

4

1 に答える 1

3

消去すると、 がcompileTerm返される可能性がありますvoid

編集

追加しましcompileTermたが、現在compileFactorはありません。

于 2012-04-15T18:43:42.880 に答える