I am having problems with the new ASC 2.0 compiler in the AIRSDK not finding obvious errors during compilation, leading to runtime errors. I am using AIRSDK 3.7.
Here is one example that fails:
SomethingBase.as:
package{ publicclass SomethingBase { public function twoargs(a : *, b : *) : void { } }}
SomethingElse.as:
package{ publicclass SomethingHere extends SomethingBase { public function SomethingHere() { super(); } override public function twoargs(a : *, b : *) : void { super.twoargs(); } }}
No errors are generated in FlashBuilder 4.7, although a runtime error occurs when this code executes. This occurs when the project type is ActionScript Library or ActionScript Project. If the project type is 'Flex Library' or 'Flex Application', compiled with Apache Flex 4.9.1, the expected compiler error appears: "
Description | Resource | Path | Location | Type |
1136: Incorrect number of arguments. Expected 2. | SomethingElse.as | /xxx-flexlib/src | line 13 | Flex Problem |
AIRSDK compiler also fails to warn from the command line:
> /Applications/Adobe\ Flash\ Builder\ 4.7/eclipse/plugins/com.adobe.flash.compiler_4.7.0.349722/AIRSDK/bin/compc -source-path . -include-sources . -output blah.swc
Using AIR SDK: /Applications/Adobe Flash Builder 4.7/eclipse/plugins/com.adobe.flash.compiler_4.7.0.349722/AIRSDK
Loading configuration: /Applications/Adobe Flash Builder 4.7/eclipse/plugins/com.adobe.flash.compiler_4.7.0.349722/AIRSDK/frameworks/flex-config.xml
1826 bytes written to /<REDACTED>/blah.swc in 0.830 seconds