2009-09-03 6 views
0

Le compilateur se plaint à ce sujet, après avoir activé toutes sortes d'avertissements:avertissement: passage d 'arguments 1 « numberWithBool: » avec une largeur différente en raison du prototype

Je crée un NSNumber comme ceci:

NSNumber *num = [NSNumber numberWithBool:YES]; 

avertissement: l'argument de passage 1 'numberWithBool:' avec une largeur différente en raison du prototype

il se plaint de la valeur I fourni. Quel est le problème avec "OUI"? Qu'est-ce que cela signifie?

Répondre

1

Cela signifie que vous avez activé l'un des avertissements relatifs à la coercition de type liés aux changements de taille. Le compilateur se plaint - probablement à tort, d'après ce que je peux dire - que YES est converti d'une largeur à l'autre - de 8 bits à 32, très probablement.

Désactiver cet avertissement particulier. Un certain nombre d'avertissements de compilateurs sont devenus inutiles au fil des ans.

1

Essayez de supprimer -Wconversion, ou si ce n'est pas là, ajoutant -Wno conversion

1

Retirer -Wconversion

Voir l'homme (1) gcc

Questions connexes