Warum warnt mich der Xcode-Compiler nicht vor ungültigen Methoden für mein Bereitstellungsziel?

Ich habe ein Xcode (4.3.2) -Projekt mit dem neuesten SDK, das iOS 4.0-Benutzer ausführen können sollen. Daher habe ich in den Projekteinstellungen den Wert für das Bereitstellungsziel auf iOS 4.0 festgelegt. Dies ist auch in den Einstellungen für Ziele der Fall.

Ich habe jedoch gerade festgestellt, dass mein Code einen iOS 5+ API-Aufruf verwendet. Dieses:

<code>[self.tabController.tabBar setBackgroundImage:tabBackground];      //Invalid in iOS 4.x ???
</code>

Der Compiler gibt mir keine Warnungen. Sollte es nicht ??? Was wird dies tun, wenn es auf einem iOS 4.0-Gerät ausgeführt wird? Leider habe ich derzeit keine zum Testen. Das macht mich sehr besorgt, dass es andere Orte gibt, an denen dasselbe passiert und mein Programm nun hoffnungslos an iOS 5 gebunden ist.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage