2017-01-16 17 views
1

は、それはエラーが、警告ではありません...それは完全に正常に動作し、これらのエラーについての詳細を理解するために出会いこの異常なエラー

+2

私は 'KAA_PROFILE_SCHEMA_VERSION <= 0'と仮定するのが正しいですか? – user694733

答えて

2

をしたいと思います。

のは、あなたがこのコードを持っているとしましょう:

void Test(int a, int b) 
{ 
    printf ("a = %d\n", a); 
} 

あなたがここに明らかにそうであるbパラメータが使用されていないという警告を取得します。

KAA_PROFILE_SCHEMA_VERSIONは確かに1より小さいsomethethingように定義されているあなたのケースでは:あなたの場合、あなたには

bool kaa_profile_manager_is_profile_set(kaa_profile_manager_t *self) 
{ 
    return true; 
} 

bool kaa_profile_manager_is_profile_set(kaa_profile_manager_t *self) 
{ 
#if KAA_PROFILE_SCHEMA_VERSION > 0 
    return self->profile_body.buffer != NULL && self->profile_body.size != 0; 
#else 
    return true; 
#endif 
} 

そのため実際のコンパイルされたコードは、この(selfが使用されていない)でありますおそらくこれらの警告を無視しても安全です。

+0

申し訳ありませんが、あなたはすでに正解を投稿しています。 – gmug

+0

@gmug問題ありませんが、これは人々が同時に答えを書くときに常に起こります。 –

2

Iが定義KAA_PROFILE_SCHEMA_VERSIONがライン#if KAA_PROFILE_SCHEMA_VERSION > 0後のコードがコンパイルされていない理由が、関数宣言のパラメータを使用しない#else後のコードの値は= 0 <に設定または設定されていないと思います。値が0より大きいKAA_PROFILE_SCHEMA_VERSIONを定義し、エラーが消えるはずです。