Dans Xcode 3.2 sous iPhone-SDK 3.1, comment puis-je éviter l'erreur «Magasin mort» de l'analyseur CLANG?
-
07-07-2019 - |
Question
Je viens de passer à Xcode 3.2 et j'utilise la fonctionnalité Construire et analyser pour vérifier si le code ancien contient des erreurs.
En faisant quelque chose que je pensais être inoffensif, j'obtiens cette erreur:
" Magasin mort: la valeur stockée dans 'newBook' lors de son initialisation n'est jamais lue dans SpellTest.m "
#define kSpellBookFilename @"TestBookSaver"
-(void)testBookLoadFromDisk;
{
// restore object from disk
SpellBook *newBook = [[[SpellBook alloc] init] autorelease];
newBook = [NSKeyedUnarchiver unarchiveObjectWithFile:kSpellBookFilename];
// show restored object
NSLog(@"archived copy %@", newBook);
}
Est-ce que j'initialise cet objet ou est-ce un faux positif?
La solution
C'est un magasin mort. Pourquoi initialisez-vous même un nouvel objet SpellBook dans la première ligne de code alors que vous le jetez dans la ligne suivante? Supprimez simplement la première ligne (et déplacez la déclaration de type vers la seconde).
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow