Quick followup. I finished fixing issues in royale-asjs a bit after starting this thread.
About 15 files in the royale-asjs/framework libraries are affected. Of those, 6 contained bugs. The rest were passing a variable of type Object where a class was expected, and they were simply missing a cast. All royale-asjs examples build successfully, which is heartening. Real-world apps may have more complex inheritance than our examples, though. Piotr, I'll try to push some branches to royale-compiler and royale-asjs later today. -- Josh Tynjala Bowler Hat LLC <https://bowlerhat.dev> On Wed, Oct 9, 2024 at 10:09 AM Josh Tynjala <joshtynj...@bowlerhat.dev> wrote: > Hey all, > > A user of vscode-as3mxml pointed out to me recently that the arguments > passed to super() and super.method() calls are not currently checked for > errors by our compiler. That includes checking the types of the arguments, > and even whether the number of arguments is actually correct! However, > regular function calls without super are correctly type checked, so it is > only in cases of inheritance where super is used. > > I have royale-compiler fixes ready to go. > > This bug has been in the compiler since the code was donated by Adobe. So > it's definitely not even remotely new, and it doesn't necessarily need to > delay the current release in progress. > > However, it may impact a lot of existing code once the compiler can start > detecting the wrong types. Several of our framework libraries in > royale-asjs are affected. It's likely that user projects, especially ones > with a lot of inheritance, will be affected too. > > In some cases, it just requires an extra cast. However, in a few cases > that I've seen so far, it is actually showing that there are bugs in our > code. I'm working through the necessary fixes in royale-asjs now. > > I just wanted to give a heads up about this, as it may have some impact on > everyone's projects. > > Any thoughts on pushing this into the 0.9.12? Or would you rather wait for > the next one? > > -- > Josh Tynjala > Bowler Hat LLC <https://bowlerhat.dev> >