I assume "functionName" in BaseFunction could also undergo a similar treatment of being replaced with an abstract getFunctionName() method, couldn't it? The function name is either calculable from other data (FieldAndMethods, overloaded case of NativeJavaMethod*, NativeJavaConstructor, InterpetedFunction) or fixed (NativeRegExpCtor) in lots of subclasses. git-svn-id: svn://10.0.0.236/trunk@167887 18797224-902f-48f8-a5cc-f745e15eee43