iOS: symbol not found _ojbc_loadweakretained while switched target to ios 4.3 (arc)
===

At the beginning we built our iOS app targeting 5.0+ and used ARC to simply memory management. Later for backward compatibility, we decided to support iOS 4.3. Then I just

1. Installed iOS 4.3 simulator
2. Modified app deployment target to 4.3
3. Clean, build, run

But the app quit unexpectly with following output

> dyld: Symbol not found: _objc_loadWeakRetained

>  Referenced from: /Users/xxx/Library/Application Support/iPhone Simulator/4.3.2/Applications/16E98912-33B5-4660-A9A3-879D92735E44/myApp.app/myApp

>  Expected in: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator4.3.sdk/System/Library/Frameworks/Foundation.framework/Foundation


I knew 4.3 didn't support weak reference, but it's weird that compiler never complained at compiling time, it simply crashed at runtime.