- ClassType type = memberExp.member.exp.expType._class.registered.type;
- if(type != normalClass || (method.dataType.byReference))// TESTING THIS OUT: && !memberExp.member.exp.expType.classObjectType)
- argClass = memberExp.member.exp.expType._class.registered;
+ argClass = FindClass("ecere::com::Class").registered;
+ }
+ else if((type.kind == arrayType || type.kind == pointerType) && type.type && type.type.kind == charType)
+ {
+ argClass = FindClass("char *").registered;
+ }
+ else if(type.kind == pointerType)
+ {
+ argClass = eSystem_FindClass(privateModule, "uintptr");
+ FreeType(memberExp.member.exp.expType);
+ memberExp.member.exp.expType = ProcessTypeString("uintptr", false);
+ memberExp.member.exp.byReference = false;