Sono probabilmente i resti di una delle numerose migrazioni del codebase da una piattaforma all'altra nei suoi molti anni di storia. E, in generale, se si dispone di uno strumento che migra automaticamente e correttamente il codice dal modulo A al modulo B, in genere non si desidera eseguire manualmente il letargo con esso poiché il rischio di introdurre un errore è troppo elevato.
Se si va indietro nel tempo per passare da NeXTSTEP a OpenStep, c'era una tecnologia di conversione chiamata TOPS che è stata utilizzata per automatizzare la conversione da API a API. Una seconda variante è stata creata per migrare da Objective-C a Java nei giorni WebObjects.
Era, in effetti, una sorta di motore di refactoring automatizzato incentrato su API e linguaggio transmogrifying.
TOPS era piuttosto potente e potrebbe essere facilmente esteso. È stato usato in modo abbastanza efficace per eseguire vari tipi di migrazioni - versione, API, stile, ecc. - sia nella comunità di terze parti che all'interno di Apple/NeXT.
(Personalmente, l'ultima volta che ho utilizzato TOPS era ~ 2002ish per migrare un'applicazione 750 ++ di riga NeXTSTEP 3.3 Objective-C++ su Mac OS X 10.2. Migrazione richiesta da 3.3 -> 4.2, 4.2 -> PR1, PR1 -> 10.2 È stata una bella sfida, ma molto divertente. C'è un po 'più di fondo qui: http://www.cocoabuilder.com/archive/cocoa/221418-porting-from-windows-to-mac.html.)
Mi sembra un hack "non eseguire questo codice". –
Questo è quello che pensavo all'inizio a causa del rientro ma in realtà è "if (0) {} else if (validStuff) {}. – user988375
potrebbe essere un residuo dal debug del codice. ma posso solo indovinare ... – katzenhut