nasgen should have type checks for @SpecializedFunction, @SpecializedConstructor methods. Also, Where.CONSTRUCTOR and Where.PROTOTYPE property checks are missing (for eg. static prototype and constructor properties have to be final and use primitive type (or else won't work as expected) Use specific return types wherever possible for @Function and @SpecializedFunction methods - it is done in NativeMath but not in other classes.