*.imp
*.sym
*.main.ec
+*.pot
+*.bowl
# Intermediate dirs
#obj/**/*.c
struct __ecereNameSpace__ecere__sys__BinaryTree templateTypes;
struct ClassDefinition * classDef;
unsigned int templateTypesOnly;
+unsigned int hasNameSpace;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
extern int printf(char * , ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern void SetGlobalData(struct __ecereNameSpace__ecere__com__NameSpace * nameSpace);
extern void SetExcludedSymbols(struct __ecereNameSpace__ecere__sys__OldList * list);
}
}
if(!valid)
-printf("Syntax:\n ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n");
+printf(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Syntax:\n ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n", (((void *)0))));
else
{
struct __ecereNameSpace__ecere__com__Instance * cppOutput;
struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
};
-extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
-
extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddMethod(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * type, void * function, int declMode);
void __ecereRegisterModule_ecc(struct __ecereNameSpace__ecere__com__Instance * module)
extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_FindMethod(struct __ecereNameSpace__ecere__com__Class * _class, char * name, struct __ecereNameSpace__ecere__com__Instance * module);
+extern void __ecereNameSpace__ecere__LoadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module, char * name);
+
extern void __ecereNameSpace__ecere__com__eInstance_Evolve(struct __ecereNameSpace__ecere__com__Instance ** instancePtr, struct __ecereNameSpace__ecere__com__Class * _class);
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
};
+extern void __ecereNameSpace__ecere__UnloadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module);
+
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Application;
struct __ecereNameSpace__ecere__com__Application
__ecereVMethodID___ecereNameSpace__ecere__sys__File_Write = method->vid;
__ecereClass___ecereNameSpace__ecere__sys__OldList = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldList");
__ecereClass___ecereNameSpace__ecere__sys__TempFile = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::TempFile");
+__ecereNameSpace__ecere__LoadTranslatedStrings(module, "ecc");
_class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "CompilerApp");
__ecereNameSpace__ecere__com__eInstance_Evolve((struct __ecereNameSpace__ecere__com__Instance **)&__currentModule, _class);
__thisModule = __currentModule;
__ecereCreateModuleInstances_ecc();
((struct __ecereNameSpace__ecere__com__Instance *)(char *)__currentModule)->_vTbl[12](__currentModule);
__ecereDestroyModuleInstances_ecc();
+__ecereNameSpace__ecere__UnloadTranslatedStrings(__currentModule);
_class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "ecere::com::Application");
exitCode = ((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Instance *)__currentModule) + 296)))->exitCode;
(__ecereNameSpace__ecere__com__eInstance_DecRef(__currentModule), __currentModule = 0);
extern int printf(char * , ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
static void __ecereNameSpace__ecere__com__NameSpace_Free(struct __ecereNameSpace__ecere__com__NameSpace * parentNameSpace);
static struct __ecereNameSpace__ecere__com__BTNamedLink * __ecereNameSpace__ecere__com__SearchNameSpace(struct __ecereNameSpace__ecere__com__NameSpace * nameSpace, char * name, void * listOffset);
if(!_class->internalDecl)
{
if(declMode != 4)
-printf("error: Redefinition of class %s\n", name);
+printf(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "error: Redefinition of class %s\n", (((void *)0))), name);
else
{
_class->comRedefinition = 0x1;
struct __ecereNameSpace__ecere__sys__BinaryTree templateTypes;
struct ClassDefinition * classDef;
unsigned int templateTypesOnly;
+unsigned int hasNameSpace;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
extern int printf(char * , ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern void SetGlobalContext(struct Context * context);
extern void SetTopContext(struct Context * context);
}
}
if(!valid)
-printf("Syntax:\n ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n");
+printf(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Syntax:\n ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n", (((void *)0))));
else
{
char command[1024];
struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
};
-extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
-
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__GlobalFunction;
struct __ecereNameSpace__ecere__com__GlobalFunction;
extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_FindMethod(struct __ecereNameSpace__ecere__com__Class * _class, char * name, struct __ecereNameSpace__ecere__com__Instance * module);
+extern void __ecereNameSpace__ecere__LoadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module, char * name);
+
extern void __ecereNameSpace__ecere__com__eInstance_Evolve(struct __ecereNameSpace__ecere__com__Instance ** instancePtr, struct __ecereNameSpace__ecere__com__Class * _class);
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
};
+extern void __ecereNameSpace__ecere__UnloadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module);
+
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Application;
struct __ecereNameSpace__ecere__com__Application
__ecereClass___ecereNameSpace__ecere__sys__NamedLink = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::NamedLink");
__ecereClass___ecereNameSpace__ecere__sys__OldList = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldList");
__ecereClass___ecereNameSpace__ecere__sys__TempFile = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::TempFile");
+__ecereNameSpace__ecere__LoadTranslatedStrings(module, "ecp");
_class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "PrecompApp");
__ecereNameSpace__ecere__com__eInstance_Evolve((struct __ecereNameSpace__ecere__com__Instance **)&__currentModule, _class);
__thisModule = __currentModule;
__ecereCreateModuleInstances_ecp();
((struct __ecereNameSpace__ecere__com__Instance *)(char *)__currentModule)->_vTbl[12](__currentModule);
__ecereDestroyModuleInstances_ecp();
+__ecereNameSpace__ecere__UnloadTranslatedStrings(__currentModule);
_class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "ecere::com::Application");
exitCode = ((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Instance *)__currentModule) + 296)))->exitCode;
(__ecereNameSpace__ecere__com__eInstance_DecRef(__currentModule), __currentModule = 0);
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
extern int printf(char * , ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern char * __ecereNameSpace__ecere__sys__GetExtension(char * string, char * output);
extern void SetDefines(struct __ecereNameSpace__ecere__sys__OldList * list);
if(!output)
valid = 0x0;
if(!valid)
-printf("Syntax:\n ecs [-t <target platform>] <input>[, <input>]* -o <output>\n");
+printf(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Syntax:\n ecs [-t <target platform>] <input>[, <input>]* -o <output>\n", (((void *)0))));
else
{
int c;
extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, char * name, char * baseName, int size, int sizeClass, unsigned int (* )(void * ), void (* )(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess);
-extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
-
extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddMethod(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * type, void * function, int declMode);
void __ecereRegisterModule_ecs(struct __ecereNameSpace__ecere__com__Instance * module)
extern struct __ecereNameSpace__ecere__com__Property * __ecereNameSpace__ecere__com__eClass_FindProperty(struct __ecereNameSpace__ecere__com__Class * _class, char * name, struct __ecereNameSpace__ecere__com__Instance * module);
+extern void __ecereNameSpace__ecere__LoadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module, char * name);
+
extern void __ecereNameSpace__ecere__com__eInstance_Evolve(struct __ecereNameSpace__ecere__com__Instance ** instancePtr, struct __ecereNameSpace__ecere__com__Class * _class);
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
};
+extern void __ecereNameSpace__ecere__UnloadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module);
+
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Application;
struct __ecereNameSpace__ecere__com__Application
__ecereClass___ecereNameSpace__ecere__sys__OldLink = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldLink");
__ecereClass___ecereNameSpace__ecere__sys__OldList = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldList");
__ecereClass___ecereNameSpace__ecere__sys__TempFile = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::TempFile");
+__ecereNameSpace__ecere__LoadTranslatedStrings(module, "ecs");
_class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "SymbolgenApp");
__ecereNameSpace__ecere__com__eInstance_Evolve((struct __ecereNameSpace__ecere__com__Instance **)&__currentModule, _class);
__thisModule = __currentModule;
__ecereCreateModuleInstances_ecs();
((struct __ecereNameSpace__ecere__com__Instance *)(char *)__currentModule)->_vTbl[12](__currentModule);
__ecereDestroyModuleInstances_ecs();
+__ecereNameSpace__ecere__UnloadTranslatedStrings(__currentModule);
_class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "ecere::com::Application");
exitCode = ((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Instance *)__currentModule) + 296)))->exitCode;
(__ecereNameSpace__ecere__com__eInstance_DecRef(__currentModule), __currentModule = 0);
extern void Compiler_Warning(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
struct Declaration * MkDeclarationDefine(struct Identifier * id, struct Expression * exp)
{
struct Declaration * decl = (decl = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass_Declaration), decl->type = 3, decl->id = id, decl->exp = exp, decl->loc = yylloc, decl);
if(!__ecereNameSpace__ecere__com__eSystem_FindDefine(privateModule, id->string))
__ecereNameSpace__ecere__com__eSystem_RegisterDefine(id->string, expString, privateModule, buildingECERECOMModule ? 4 : 1);
else
-Compiler_Warning("Redefinition of %s ignored\n", id->string);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Redefinition of %s ignored\n", (((void *)0))), id->string);
return decl;
}
FreeList(specs, FreeSpecifier);
if(!spec)
{
-Compiler_Error("Expecting class specifier\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Expecting class specifier\n", (((void *)0))));
inst->_class = MkSpecifierName("");
}
}
extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, char * name, char * baseName, int size, int sizeClass, unsigned int (* )(void * ), void (* )(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess);
-extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
-
extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddMethod(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * type, void * function, int declMode);
extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_AddDataMember(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * type, unsigned int size, unsigned int alignment, int declMode);
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern void * __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(struct __ecereNameSpace__ecere__sys__OldList * this, void * item);
else
{
FreeExpContents(exp);
-Compiler_Error("No database table defined in this module or database_open already used.\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "No database table defined in this module or database_open already used.\n", (((void *)0))));
exp->type = 16;
}
break;
needTable = 0x1;
}
else
-Compiler_Error("Multiple field index requires a name\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Multiple field index requires a name\n", (((void *)0))));
}
else
{
extern struct __ecereNameSpace__ecere__com__Property * __ecereNameSpace__ecere__com__eClass_FindProperty(struct __ecereNameSpace__ecere__com__Class * _class, char * name, struct __ecereNameSpace__ecere__com__Instance * module);
+extern void __ecereNameSpace__ecere__LoadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module, char * name);
+
unsigned int __ecereDll_Load_ec(struct __ecereNameSpace__ecere__com__Instance * module)
{
struct __ecereNameSpace__ecere__com__Class * _class;
__ecereClass___ecereNameSpace__ecere__sys__OldLink = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldLink");
__ecereClass___ecereNameSpace__ecere__sys__OldList = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldList");
__ecereClass___ecereNameSpace__ecere__sys__TempFile = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::TempFile");
+__ecereNameSpace__ecere__LoadTranslatedStrings(module, "ec");
}
if(__currentModule == module)
{
return 0x1;
}
+extern void __ecereNameSpace__ecere__UnloadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module);
+
unsigned int __ecereDll_Unload_ec(struct __ecereNameSpace__ecere__com__Instance * module)
{
if(__currentModule == module)
{
__ecereDestroyModuleInstances_ast();
__ecereDestroyModuleInstances_loadSymbols();
+__ecereNameSpace__ecere__UnloadTranslatedStrings(__currentModule);
}
__ecereUnregisterModule_ast(module);
__ecereUnregisterModule_copy(module);
extern int printf(char * , ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern int vsprintf(char * , const char * , __builtin_va_list);
extern int fputs(char * , void * stream);
-extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
-
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
struct __ecereNameSpace__ecere__com__NameSpace
__ecereNameSpace__ecere__sys__PathCat(string, sourceFile);
}
printf(string);
-printf(":%d:%d: error: ", yylloc.start.line, yylloc.start.charPos);
+printf(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, ":%d:%d: error: ", (((void *)0))), yylloc.start.line, yylloc.start.charPos);
__builtin_va_start(args, format);
vsprintf(string, format, args);
__builtin_va_end(args);
__ecereNameSpace__ecere__sys__PathCat(string, sourceFile);
}
printf(string);
-printf(":%d:%d: warning: ", yylloc.start.line, yylloc.start.charPos);
+printf(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, ":%d:%d: warning: ", (((void *)0))), yylloc.start.line, yylloc.start.charPos);
__builtin_va_start(args, format);
vsprintf(string, format, args);
__builtin_va_end(args);
if(!skipErrors)
{
parseError = 0x1;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
}
return 0;
}
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern void FreeType(struct Type * type);
extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eMember_AddDataMember(struct __ecereNameSpace__ecere__com__DataMember * member, char * name, char * type, unsigned int size, unsigned int alignment, int declMode);
dataMember->dataType = dataType;
else
{
-Compiler_Error("Member with same name already exists %s in class %s\n", declId->string, regClass->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Member with same name already exists %s in class %s\n", (((void *)0))), declId->string, regClass->name);
FreeType(dataType);
}
}
{
dataMember = __ecereNameSpace__ecere__com__eMember_AddDataMember(member, declId->string, typeString, 0, 0, def->memberAccess);
if(!dataMember)
-Compiler_Error("Member with same name already exists %s in member %s\n", declId->string, member->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Member with same name already exists %s in member %s\n", (((void *)0))), declId->string, member->name);
}
else
{
dataMember = __ecereNameSpace__ecere__com__eClass_AddDataMember(regClass, declId->string, typeString, 0, 0, def->memberAccess);
if(!dataMember)
-Compiler_Error("Member with same name already exists %s in class %s\n", declId->string, regClass->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Member with same name already exists %s in class %s\n", (((void *)0))), declId->string, regClass->name);
}
if(dataMember)
dataMember->dataType = dataType;
{
dataMember = __ecereNameSpace__ecere__com__eMember_AddDataMember(member, id->string, typeString, 0, 0, def->memberAccess);
if(!dataMember)
-Compiler_Error("Member with same name already exists %s in member %s\n", id->string, member->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Member with same name already exists %s in member %s\n", (((void *)0))), id->string, member->name);
}
else
{
dataMember = __ecereNameSpace__ecere__com__eClass_AddDataMember(regClass, id->string, typeString, 0, 0, def->memberAccess);
if(!dataMember)
-Compiler_Error("Member with same name already exists %s in class %s\n", id->string, regClass->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Member with same name already exists %s in class %s\n", (((void *)0))), id->string, regClass->name);
}
if(dataMember)
dataMember->dataType = dataType;
{
dataMember = __ecereNameSpace__ecere__com__eMember_AddDataMember(member, string, inst->_class->name, 0, 0, def->memberAccess);
if(!dataMember)
-Compiler_Error("Member with same name already exists %s in member %s\n", string, member->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Member with same name already exists %s in member %s\n", (((void *)0))), string, member->name);
}
else
{
dataMember = __ecereNameSpace__ecere__com__eClass_AddDataMember(regClass, string, inst->_class->name, 0, 0, def->memberAccess);
if(!dataMember)
-Compiler_Error("Member with same name already exists %s in class %s\n", string, regClass->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Member with same name already exists %s in class %s\n", (((void *)0))), string, regClass->name);
}
if(dataMember)
dataMember->dataType = dataType;
if(inCompiler)
{
yylloc = *loc;
-Compiler_Error("redefinition of class %s\n", symbol->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "redefinition of class %s\n", (((void *)0))), symbol->string);
return ;
}
}
method = __ecereNameSpace__ecere__com__eClass_AddMethod(regClass, id->string, typeString, inCompiler ? func->declarator->symbol : (((void *)0)), def->memberAccess);
if(!method)
-Compiler_Error("Redefinition of method %s in class %s\n", id->string, regClass->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Redefinition of method %s in class %s\n", (((void *)0))), id->string, regClass->name);
(__ecereNameSpace__ecere__com__eSystem_Delete(typeString), typeString = 0);
}
if(method && (method->type != 1 || method->_class == regClass))
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern struct AsmField * MkAsmField(char * command, struct Expression * expression);
extern struct Statement * MkAsmStmt(struct Specifier * spec, char * statements, struct __ecereNameSpace__ecere__sys__OldList * inputFields, struct __ecereNameSpace__ecere__sys__OldList * outputFields, struct __ecereNameSpace__ecere__sys__OldList * clobberedFields);
case 1037:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1038:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1039:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1040:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1041:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1042:
{
yyval.stmt = yyvsp[(1) - (2)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1043:
{
yyval.stmt = MkExpressionStmt(yyvsp[(1) - (1)].list);
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
yyval.stmt->loc = (yylsp[(1) - (1)]);
;
}
extern char * strncpy(char * , const char * , int n);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern unsigned int inCompiler;
extern int FindIncludeFileID(char * includeFile);
}
if(include_stack_ptr >= (10))
{
-fprintf((bsl_stderr()), "Includes nested too deeply");
+fprintf((bsl_stderr()), __ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Includes nested too deeply", (((void *)0))));
exit(1);
}
if(inCompiler || !FindIncludeFileID(includeFile))
struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
};
-extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
-
extern struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_AddDataMember(struct __ecereNameSpace__ecere__com__Class * _class, char * name, char * type, unsigned int size, unsigned int alignment, int declMode);
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__GlobalFunction;
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern void * __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof;
}
else if(importType != 4)
{
-Compiler_Error("Couldn't open %s\n", fileName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Couldn't open %s\n", (((void *)0))), fileName);
}
return globalInstance;
}
extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com__eModule_LoadStrict(struct __ecereNameSpace__ecere__com__Instance * fromModule, char * name, int importAccess);
-extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
-
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
struct __ecereNameSpace__ecere__com__Module
PrintType(type1, type1String, 0x0, 0x1);
PrintType(type2, type2String, 0x0, 0x1);
if(strcmp(type1String, type2String))
-Compiler_Warning("Redefinition of %s (defining as %s, already defined as %s)\n", redefinition->name, type1String, type2String);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Redefinition of %s (defining as %s, already defined as %s)\n", (((void *)0))), redefinition->name, type1String, type2String);
FreeType(type1);
FreeType(type2);
}
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
struct __ecereNameSpace__ecere__com__Module
regClass = regClass->templateClass;
if(classSym->isStatic && access != 3)
{
-Compiler_Error("Non-static %s making use of a static class\n", word);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Non-static %s making use of a static class\n", (((void *)0))), word);
}
else if(access == 1)
{
if(!NameSpaceContained(regClass->nameSpace, &((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Module *)(((char *)regClass->module + 12)))->application + 296)))->systemNameSpace))
{
if(NameSpaceContained(regClass->nameSpace, &((struct __ecereNameSpace__ecere__com__Module *)(((char *)regClass->module + 12)))->privateNameSpace) || !ModuleAccess(privateModule, regClass->module))
-Compiler_Error("Public %s making use of a private class\n", word);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Public %s making use of a private class\n", (((void *)0))), word);
}
}
}
else
dataMember = __ecereNameSpace__ecere__com__eClass_FindDataMember(regClass, declId->string, privateModule, (((void *)0)), (((void *)0)));
if(dataMember)
-CheckPublicDataType(dataMember->dataType, (def->memberAccess == 2) ? 2 : access, "class data member");
+CheckPublicDataType(dataMember->dataType, (def->memberAccess == 2) ? 2 : access, __ecereNameSpace__ecere__GetTranslatedString(__thisModule, "class data member", (((void *)0))));
}
}
}
else
dataMember = __ecereNameSpace__ecere__com__eClass_FindDataMember(regClass, spec->id->string, privateModule, (((void *)0)), (((void *)0)));
if(dataMember)
-CheckPublicDataType(dataMember->dataType, (def->memberAccess == 2) ? 2 : access, "class data member");
+CheckPublicDataType(dataMember->dataType, (def->memberAccess == 2) ? 2 : access, __ecereNameSpace__ecere__GetTranslatedString(__thisModule, "class data member", (((void *)0))));
}
}
}
}
else if(decl->type == 2)
{
-CheckPublicClass(decl->inst->_class->symbol, (def->memberAccess == 2) ? 2 : access, "class member instance");
+CheckPublicClass(decl->inst->_class->symbol, (def->memberAccess == 2) ? 2 : access, __ecereNameSpace__ecere__GetTranslatedString(__thisModule, "class member instance", (((void *)0))));
}
}
}
{
if(!regClass->base->symbol)
regClass->base->symbol = FindClass(regClass->base->fullName);
-CheckPublicClass(regClass->base->symbol, 1, "class");
+CheckPublicClass(regClass->base->symbol, 1, __ecereNameSpace__ecere__GetTranslatedString(__thisModule, "class", (((void *)0))));
}
else if(!symbol->isStatic && regClass->base)
{
if(!regClass->base->symbol)
regClass->base->symbol = FindClass(regClass->base->fullName);
-CheckPublicClass(regClass->base->symbol, 2, "class");
+CheckPublicClass(regClass->base->symbol, 2, __ecereNameSpace__ecere__GetTranslatedString(__thisModule, "class", (((void *)0))));
}
}
if(definitions != (((void *)0)))
else
{
yylloc = def->loc;
-Compiler_Error("Couldn't find member %s to override\n", def->id->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Couldn't find member %s to override\n", (((void *)0))), def->id->string);
}
}
}
if(destructor)
{
yylloc = *loc;
-Compiler_Error("redefinition of destructor for class %s\n", symbol->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "redefinition of destructor for class %s\n", (((void *)0))), symbol->string);
}
else
{
if(constructor)
{
yylloc = *loc;
-Compiler_Error("redefinition of constructor for class %s\n", symbol->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "redefinition of constructor for class %s\n", (((void *)0))), symbol->string);
}
else
{
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern struct Declarator * GetFuncDecl(struct Declarator * decl);
extern void FreeType(struct Type * type);
yylloc = func->loc;
if(!MatchTypes(type, methodDataType, (((void *)0)), owningClass, method->_class, 0x1, 0x1, 0x1, 0x0))
{
-Compiler_Error("Incompatible virtual function %s\n", method->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Incompatible virtual function %s\n", (((void *)0))), method->name);
}
else
{
ListAdd(stmt->expressions, MkExpCall(MkExpIdentifier(MkIdentifier("eProperty_SelfWatch")), args));
}
else
-Compiler_Error("Property %s not found in class %s\n", propID->string, regClass->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Property %s not found in class %s\n", (((void *)0))), propID->string, regClass->fullName);
}
FreePropertyWatch(def->propertyWatch);
def->propertyWatch = (struct PropertyWatch *)stmt;
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern int __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, char * name);
int ComputeTypeSize(struct Type * type)
yylloc = type->arraySizeExp->loc;
if(inCompiler)
PrintExpression(type->arraySizeExp, expression);
-Compiler_Error("Array size not constant int (%s)\n", expression);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Array size not constant int (%s)\n", (((void *)0))), expression);
yylloc = oldLoc;
}
GetInt(type->arraySizeExp, &type->arraySize);
source->refCount++;
}
else
-Compiler_Error("cannot dereference type\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "cannot dereference type\n", (((void *)0))));
}
return type;
}
expString[0] = '\0';
PrintExpression(member->initializer->exp, expString);
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
-Compiler_Error("unresolved symbol used as an instance method %s\n", expString);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "unresolved symbol used as an instance method %s\n", (((void *)0))), expString);
}
}
else if(!MatchTypes(member->initializer->exp->expType, type, (((void *)0)), (((void *)0)), _class, 0x1, 0x1, 0x0, 0x0))
{
-Compiler_Error("incompatible instance method %s\n", ident->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "incompatible instance method %s\n", (((void *)0))), ident->string);
}
}
else if(member->initializer)
{
if(method)
{
-Compiler_Error("couldn't find virtual method %s in class %s\n", ident->string, _class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't find virtual method %s in class %s\n", (((void *)0))), ident->string, _class->fullName);
}
else if(_class)
{
-Compiler_Error("couldn't find member %s in class %s\n", ident->string, _class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't find member %s in class %s\n", (((void *)0))), ident->string, _class->fullName);
if(inCompiler)
__ecereNameSpace__ecere__com__eClass_AddDataMember(_class, ident->string, "int", 0, 0, 1);
}
}
else if(_class)
-Compiler_Error("too many initializers for instantiation of class %s\n", _class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "too many initializers for instantiation of class %s\n", (((void *)0))), _class->fullName);
}
}
}
}
else if(classSym)
{
-Compiler_Error("couldn't find virtual method %s in class %s\n", unmangled, classSym->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't find virtual method %s in class %s\n", (((void *)0))), unmangled, classSym->string);
}
}
createdExternal = ProcessClassFunction(classSym ? classSym->registered : (((void *)0)), members->function, ast, afterExternal, 0x1);
if(!paramDest || (!(paramDest->kind == 13 && paramDest->type && paramDest->type->kind == 0) && (paramDest->kind != 8 || !__ecereNameSpace__ecere__com__eClass_IsDerived(source->thisClass ? source->thisClass->registered : owningClassSource, paramDest->_class->registered))))
{
if(paramDest && paramDest->kind == 8)
-Compiler_Error("method class must be derived from %s\n", paramDest->_class->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "method class must be derived from %s\n", (((void *)0))), paramDest->_class->string);
else
-Compiler_Error("method class should not take an object\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "method class should not take an object\n", (((void *)0))));
return 0x0;
}
paramDest = paramDest->next;
{
if(!paramSource || paramSource->kind != 8 || !__ecereNameSpace__ecere__com__eClass_IsDerived(paramSource->_class->registered, dest->thisClass->registered))
{
-Compiler_Error("method class must be derived from %s\n", dest->thisClass->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "method class must be derived from %s\n", (((void *)0))), dest->thisClass->string);
return 0x0;
}
}
if(!paramSource || paramSource->kind != 8 || (owningClassDest && !__ecereNameSpace__ecere__com__eClass_IsDerived(paramSource->_class->registered, owningClassDest)))
{
if(owningClassDest)
-Compiler_Error("%s expected to be derived from method class\n", owningClassDest->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "%s expected to be derived from method class\n", (((void *)0))), owningClassDest->fullName);
else
-Compiler_Error("overriding class expected to be derived from method class\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "overriding class expected to be derived from method class\n", (((void *)0))));
return 0x0;
}
}
{
if(!__ecereNameSpace__ecere__com__eClass_IsDerived(source->thisClass ? source->thisClass->registered : owningClassSource, dest->thisClass->registered))
{
-Compiler_Error("method class must be derived from %s\n", dest->thisClass->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "method class must be derived from %s\n", (((void *)0))), dest->thisClass->string);
return 0x0;
}
}
{
if(source->thisClass && source->thisClass->registered && owningClassDest && !__ecereNameSpace__ecere__com__eClass_IsDerived(source->thisClass->registered, owningClassDest))
{
-Compiler_Error("%s expected to be derived from method class\n", source->thisClass->registered->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "%s expected to be derived from method class\n", (((void *)0))), source->thisClass->registered->fullName);
return 0x0;
}
}
}
if(!MatchTypes(source->returnType, dest->returnType, (((void *)0)), (((void *)0)), (((void *)0)), 0x1, 0x1, 0x0, 0x0))
{
-Compiler_Warning("incompatible return type for function\n");
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "incompatible return type for function\n", (((void *)0))));
return 0x0;
}
for(; paramDest; paramDest = paramDest->next)
{
if(!paramSource)
{
-Compiler_Error("not enough parameters\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "not enough parameters\n", (((void *)0))));
return 0x0;
}
{
type[0] = (char)0;
PrintType(paramDest, type, 0x0, 0x1);
-Compiler_Warning("incompatible parameter %s (expected %s)\n", paramSource->name, type);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "incompatible parameter %s (expected %s)\n", (((void *)0))), paramSource->name, type);
if(paramDestType != paramDest)
FreeType(paramDestType);
return 0x0;
}
if(paramSource)
{
-Compiler_Error("too many parameters\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "too many parameters\n", (((void *)0))));
return 0x0;
}
return 0x1;
extern int __ecereVMethodID_class_OnGetString;
-extern int printf(char * , ...);
-
static void PopulateInstanceProcessMember(struct Instantiation * inst, struct __ecereNameSpace__ecere__sys__OldList * memberList, struct __ecereNameSpace__ecere__com__DataMember * parentDataMember, unsigned int offset)
{
struct __ecereNameSpace__ecere__com__DataMember * dataMember;
break;
}
default:
-printf("error: unhandled type populating instance\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Unhandled type populating instance\n", (((void *)0))));
}
}
ListAdd(memberList, member);
break;
}
default:
-printf("error: unhandled type populating instance\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Unhandled type populating instance\n", (((void *)0))));
}
}
ListAdd(memberList, member);
{
if(destType->kind == 14)
{
-Compiler_Error("Unspecified type\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Unspecified type\n", (((void *)0))));
}
else if(!(destType->truth && e->expType->kind == 8 && e->expType->_class && e->expType->_class->registered && e->expType->_class->registered->type == 1))
{
{
if(inCompiler)
{
-Compiler_Error("Recursion in defined expression %s\n", id->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Recursion in defined expression %s\n", (((void *)0))), id->string);
}
}
}
if(type1 && type1->kind == 13)
{
if(exp->op.op == MUL_ASSIGN || exp->op.op == DIV_ASSIGN || exp->op.op == MOD_ASSIGN || exp->op.op == LEFT_ASSIGN || exp->op.op == RIGHT_ASSIGN || exp->op.op == AND_ASSIGN || exp->op.op == OR_ASSIGN)
-Compiler_Error("operator %s illegal on pointer\n", exp->op.op);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "operator %s illegal on pointer\n", (((void *)0))), exp->op.op);
else if(exp->op.op == '=')
{
if(exp->op.exp2->destType)
if(exp->op.exp2->expType->kind == 4 || exp->op.exp2->expType->kind == 3 || exp->op.exp2->expType->kind == 2 || exp->op.exp2->expType->kind == 1)
{
if(exp->op.op != '=' && type1->type->kind == 0)
-Compiler_Error("void *: unknown size\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "void *: unknown size\n", (((void *)0))));
}
else if(exp->op.exp2->expType->kind == 13 || exp->op.exp2->expType->kind == 12 || exp->op.exp2->expType->kind == 11 || exp->op.exp2->expType->kind == 16 || (type1->type->kind == 0 && exp->op.exp2->expType->kind == 8 && exp->op.exp2->expType->_class->registered && (exp->op.exp2->expType->_class->registered->type == 0 || exp->op.exp2->expType->_class->registered->type == 1 || exp->op.exp2->expType->_class->registered->type == 5)))
{
if(exp->op.op == ADD_ASSIGN)
-Compiler_Error("cannot add two pointers\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "cannot add two pointers\n", (((void *)0))));
}
else if((exp->op.exp2->expType->kind == 8 && type1->kind == 13 && type1->type->kind == 8 && type1->type->_class == exp->op.exp2->expType->_class && exp->op.exp2->expType->_class->registered && exp->op.exp2->expType->_class->registered->type == 1))
{
if(exp->op.op == ADD_ASSIGN)
-Compiler_Error("cannot add two pointers\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "cannot add two pointers\n", (((void *)0))));
}
else if(inCompiler)
{
PrintType(exp->op.exp2->expType, type1String, 0x0, 0x1);
PrintType(type1, type2String, 0x0, 0x1);
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
-Compiler_Warning("incompatible expression %s (%s); expected %s\n", expString, type1String, type2String);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "incompatible expression %s (%s); expected %s\n", (((void *)0))), expString, type1String, type2String);
}
}
if(exp->op.exp2->destType == dummy)
exp->op.exp1->destType = type2;
type2->refCount++;
if(!boolResult && type1->kind == 8 && (!exp->destType || exp->destType->kind != 8) && type1->_class->registered && type1->_class->registered->type == 3 && type2->_class->registered && type2->_class->registered->type == 3 && type1->_class->registered != type2->_class->registered)
-Compiler_Warning("operating on %s and %s with an untyped result, assuming %s\n", type1->_class->string, type2->_class->string, type1->_class->string);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "operating on %s and %s with an untyped result, assuming %s\n", (((void *)0))), type1->_class->string, type2->_class->string, type1->_class->string);
if(type1->kind == 13 && type1->type->kind == 20 && type2->kind != 13)
{
struct Expression * argExp = GetTemplateArgExp(type1->type->templateParameter, thisClass, 0x1);
if(!boolResult && ((type1->kind == 13 || type1->kind == 12 || (type1->kind == 8 && !strcmp(type1->_class->string, "String"))) && (type2->kind == 4 || type2->kind == 3 || type2->kind == 2 || type2->kind == 1)))
{
if(type1->kind != 8 && type1->type->kind == 0)
-Compiler_Error("void *: unknown size\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "void *: unknown size\n", (((void *)0))));
exp->expType = type1;
if(type1)
type1->refCount++;
else if(!boolResult && ((type2->kind == 13 || type2->kind == 12 || (type2->kind == 8 && !strcmp(type2->_class->string, "String"))) && (type1->kind == 4 || type1->kind == 3 || type1->kind == 2 || type1->kind == 1)))
{
if(type2->kind != 8 && type2->type->kind == 0)
-Compiler_Error("void *: unknown size\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "void *: unknown size\n", (((void *)0))));
exp->expType = type2;
if(type2)
type2->refCount++;
}
else if((type1->kind == 13 && type2->kind != 13 && type2->kind != 12 && type2->kind != 11 && type2->kind != 16 && type2->kind != 8 && type2->kind != 19) || (type2->kind == 13 && type1->kind != 13 && type1->kind != 12 && type1->kind != 11 && type1->kind != 16 && type1->kind != 8 && type1->kind != 19))
{
-Compiler_Warning("different levels of indirection\n");
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "different levels of indirection\n", (((void *)0))));
}
else
{
if(type1->kind == 13 && type2->kind == 13)
{
if(exp->op.op == '+')
-Compiler_Error("cannot add two pointers\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "cannot add two pointers\n", (((void *)0))));
else if(exp->op.op == '-')
{
if(MatchTypes(type1->type, type2->type, (((void *)0)), (((void *)0)), (((void *)0)), 0x0, 0x0, 0x0, 0x0))
PrintType(exp->op.exp1->expType, type1, 0x0, 0x1);
PrintType(exp->op.exp2->expType, type2, 0x0, 0x1);
}
-Compiler_Warning("incompatible expressions %s (%s) and %s (%s)\n", expString1, type1, expString2, type2);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "incompatible expressions %s (%s) and %s (%s)\n", (((void *)0))), expString1, type1, expString2, type2);
}
}
}
PrintType(exp->op.exp1->expType, type1String, 0x0, 0x1);
PrintType(exp->op.exp2->expType, type2String, 0x0, 0x1);
}
-Compiler_Warning("incompatible expressions %s (%s) and %s (%s)\n", expString1, type1String, expString2, type2String);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "incompatible expressions %s (%s) and %s (%s)\n", (((void *)0))), expString1, type1String, expString2, type2String);
if(type1->kind == 8 && type1->_class && type1->_class->registered && type1->_class->registered->type == 4)
{
exp->expType = exp->op.exp1->expType;
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
}
if(expString[0])
-Compiler_Error("couldn't determine type of %s\n", expString);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't determine type of %s\n", (((void *)0))), expString);
}
if(exp->op.exp2 && !exp->op.exp2->expType)
{
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
}
if(expString[0])
-Compiler_Error("couldn't determine type of %s\n", expString);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't determine type of %s\n", (((void *)0))), expString);
}
if(boolResult)
{
}
if(functionType && functionType->kind != 11)
{
-Compiler_Error("called object %s is not a function\n", name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "called object %s is not a function\n", (((void *)0))), name);
}
else if(functionType)
{
{
yylloc = e->loc;
if(methodType && methodType->methodClass)
-Compiler_Error("too many arguments for method %s::%s (%d given, expected %d)\n", methodType->methodClass->fullName, methodType->method->name, (*exp->call.arguments).count, noParams ? 0 : functionType->params.count);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "too many arguments for method %s::%s (%d given, expected %d)\n", (((void *)0))), methodType->methodClass->fullName, methodType->method->name, (*exp->call.arguments).count, noParams ? 0 : functionType->params.count);
else
-Compiler_Error("too many arguments for function %s (%d given, expected %d)\n", name, (*exp->call.arguments).count, noParams ? 0 : functionType->params.count);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "too many arguments for function %s (%d given, expected %d)\n", (((void *)0))), name, (*exp->call.arguments).count, noParams ? 0 : functionType->params.count);
break;
}
if(methodType && type && type->kind == 20 && type->templateParameter->type == 0)
if(type && type->kind != 14)
{
if(methodType && methodType->methodClass)
-Compiler_Warning("not enough arguments for method %s::%s (%d given, expected %d)\n", methodType->methodClass->fullName, methodType->method->name, exp->call.arguments ? (*exp->call.arguments).count : 0, functionType->params.count + extra);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "not enough arguments for method %s::%s (%d given, expected %d)\n", (((void *)0))), methodType->methodClass->fullName, methodType->method->name, exp->call.arguments ? (*exp->call.arguments).count : 0, functionType->params.count + extra);
else
-Compiler_Warning("not enough arguments for function %s (%d given, expected %d)\n", name, exp->call.arguments ? (*exp->call.arguments).count : 0, functionType->params.count + extra);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "not enough arguments for function %s (%d given, expected %d)\n", (((void *)0))), name, exp->call.arguments ? (*exp->call.arguments).count : 0, functionType->params.count + extra);
}
yylloc = oldyylloc;
if(type && !type->refCount)
if(strstr(string, "__builtin_") == string)
;
else
-Compiler_Warning("%s undefined; assuming extern returning int\n", string);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "%s undefined; assuming extern returning int\n", (((void *)0))), string);
symbol = (__ecereTemp1 = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass_Symbol), ((struct Symbol *)__ecereTemp1)->string = __ecereNameSpace__ecere__sys__CopyString(string), ((struct Symbol *)__ecereTemp1)->type = ProcessTypeString("int()", 0x1), ((struct Symbol *)__ecereTemp1));
__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_Add(&globalContext->symbols, (struct __ecereNameSpace__ecere__sys__BTNode *)symbol);
if(strstr(symbol->string, "::"))
{
}
else
-Compiler_Warning("callable object undefined; extern assuming returning int\n");
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "callable object undefined; extern assuming returning int\n", (((void *)0))));
if(!functionType->returnType)
{
functionType->returnType = (__ecereTemp1 = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass_Type), ((struct Type *)__ecereTemp1)->refCount = 1, ((struct Type *)__ecereTemp1)->kind = 3, ((struct Type *)__ecereTemp1));
if(id && id->_class && id->_class->name && !strcmp(id->_class->name, "property"))
exp->member.memberType = 1;
if(id && id->_class && type->_class && !__ecereNameSpace__ecere__com__eClass_IsDerived(type->_class->registered, _class))
-Compiler_Error("invalid class specifier %s for object of class %s\n", _class->fullName, type->_class->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "invalid class specifier %s for object of class %s\n", (((void *)0))), _class->fullName, type->_class->string);
if(typeKind != 19)
{
if((exp->member.memberType == 0 && thisPtr) || exp->member.memberType == 3)
return ;
}
yylloc = exp->member.member->loc;
-Compiler_Error("couldn't find member %s in class %s\n", id->string, _class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't find member %s in class %s\n", (((void *)0))), id->string, _class->fullName);
if(inCompiler)
__ecereNameSpace__ecere__com__eClass_AddDataMember(_class, id->string, "int", 0, 0, 1);
}
}
}
else
-Compiler_Error("undefined class %s\n", (id && (!id->_class || id->_class->name)) ? (id->classSym ? id->classSym->string : (type->_class ? type->_class->string : (((void *)0)))) : "(null)");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "undefined class %s\n", (((void *)0))), (id && (!id->_class || id->_class->name)) ? (id->classSym ? id->classSym->string : (type->_class ? type->_class->string : (((void *)0)))) : "(null)");
}
else if(type && (type->kind == 9 || type->kind == 10))
{
PrintExpression(exp, expString);
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
}
-Compiler_Error("member operator on non-structure type expression %s\n", expString);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "member operator on non-structure type expression %s\n", (((void *)0))), expString);
}
if(exp->expType && exp->expType->kind == 21 && (!exp->destType || exp->destType->kind != 21))
{
else
{
exp->expType = ProcessTypeString("Container", 0x0);
-Compiler_Error("Couldn't determine type of array elements\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Couldn't determine type of array elements\n", (((void *)0))));
}
break;
}
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
}
if(unresolved)
-Compiler_Error("unresolved identifier %s; expected %s\n", expString, type2);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "unresolved identifier %s; expected %s\n", (((void *)0))), expString, type2);
else if(exp->type != 16)
-Compiler_Error("couldn't determine type of %s; expected %s\n", expString, type2);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't determine type of %s; expected %s\n", (((void *)0))), expString, type2);
}
}
else
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
}
if(unresolved)
-Compiler_Error("unresolved identifier %s\n", expString);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "unresolved identifier %s\n", (((void *)0))), expString);
else if(exp->type != 16)
-Compiler_Error("couldn't determine type of %s\n", expString);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't determine type of %s\n", (((void *)0))), expString);
}
}
else
PrintExpression(exp, expString);
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
}
-Compiler_Warning("incompatible expression %s (%s); expected %s\n", expString, type1, type2);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "incompatible expression %s (%s); expected %s\n", (((void *)0))), expString, type1, type2);
FreeType(exp->expType);
exp->destType->refCount++;
exp->expType = exp->destType;
else if(unresolved)
{
if(exp->identifier->_class && exp->identifier->_class->name)
-Compiler_Error("unresolved identifier %s::%s\n", exp->identifier->_class->name, exp->identifier->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "unresolved identifier %s::%s\n", (((void *)0))), exp->identifier->_class->name, exp->identifier->string);
else if(exp->identifier->string && exp->identifier->string[0])
-Compiler_Error("unresolved identifier %s\n", exp->identifier->string);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "unresolved identifier %s\n", (((void *)0))), exp->identifier->string);
}
else if(!exp->expType && exp->type != 16)
{
PrintExpression(exp, expString);
__ecereNameSpace__ecere__sys__ChangeCh(expString, '\n', ' ');
}
-Compiler_Error("couldn't determine type of %s\n", expString);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "couldn't determine type of %s\n", (((void *)0))), expString);
}
ApplyAnyObjectLogic(exp);
if(!notByReference && exp->expType && exp->expType->kind == 8 && exp->expType->_class && exp->expType->_class->registered && exp->expType->_class->registered->type == 5)
FreeType(initializerType);
if(type && type->kind != 12 && type->kind != 9 && type->kind != 10 && (type->kind != 8 || !type->_class->registered || type->_class->registered->type != 1))
{
-Compiler_Error("Assigning list initializer to non list\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Assigning list initializer to non list\n", (((void *)0))));
}
break;
}
else
{
arrayExp->expType = ProcessTypeString("Container", 0x0);
-Compiler_Error("Couldn't determine type of array elements\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Couldn't determine type of array elements\n", (((void *)0))));
}
}
else if(isLinkList && !isList)
}
else
{
-Compiler_Error("Expression is not a container\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Expression is not a container\n", (((void *)0))));
}
break;
}
ListAdd(stmt->expressions, MkExpCall(MkExpIdentifier(MkIdentifier("ecere::com::eInstance_Watch")), args));
}
else
-Compiler_Error("Property %s not found in class %s\n", prop->name, _class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Property %s not found in class %s\n", (((void *)0))), prop->name, _class->fullName);
}
}
}
else
-Compiler_Error("Invalid watched object\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Invalid watched object\n", (((void *)0))));
}
curExternal = external;
curContext = context;
FreeList(watches, FreePropertyWatch);
}
else
-Compiler_Error("No observer specified and not inside a _class\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "No observer specified and not inside a _class\n", (((void *)0))));
}
else
{
CreateFireWatcher(prop, object, stmt);
}
else
-Compiler_Error("Property %s not found in class %s\n", propID->string, _class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Property %s not found in class %s\n", (((void *)0))), propID->string, _class->fullName);
}
}
else
FreeList(watches, FreeIdentifier);
}
else
-Compiler_Error("Invalid object specified and not inside a class\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Invalid object specified and not inside a class\n", (((void *)0))));
}
break;
}
ListAdd(stmt->expressions, MkExpCall(MkExpIdentifier(MkIdentifier("ecere::com::eInstance_StopWatching")), args));
}
else
-Compiler_Error("Property %s not found in class %s\n", prop->name, _class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Property %s not found in class %s\n", (((void *)0))), prop->name, _class->fullName);
}
}
if(object)
FreeList(watches, FreeIdentifier);
}
else
-Compiler_Error("Invalid object specified and not inside a class\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "Invalid object specified and not inside a class\n", (((void *)0))));
}
else
-Compiler_Error("No observer specified and not inside a class\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "No observer specified and not inside a class\n", (((void *)0))));
}
break;
}
extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, char * name, char * baseName, int size, int sizeClass, unsigned int (* )(void * ), void (* )(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess);
-extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
-
void __ecereRegisterModule_pass15(struct __ecereNameSpace__ecere__com__Instance * module)
{
struct __ecereNameSpace__ecere__com__Class * class;
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
static unsigned int ProcessBracketInst(struct Instantiation * inst, struct __ecereNameSpace__ecere__sys__OldList * list)
{
static int recursionCount = 0;
{
if(!((struct __ecereNameSpace__ecere__com__Property *)dataMember)->Set)
{
-Compiler_Error("No set defined for property %s\n", dataMember->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "No set defined for property %s\n", (((void *)0))), dataMember->name);
continue;
}
recursionCount--;
{
if(!((struct __ecereNameSpace__ecere__com__Property *)dataMember)->Set)
{
-Compiler_Error("No set defined for property %s\n", dataMember->name);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "No set defined for property %s\n", (((void *)0))), dataMember->name);
continue;
}
recursionCount--;
struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
struct Context * ctx;
int isIterator;
+struct Expression * propCategory;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
extern void Compiler_Error(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_FindMethod(struct __ecereNameSpace__ecere__com__Class * _class, char * name, struct __ecereNameSpace__ecere__com__Instance * module);
extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_FindClass(struct __ecereNameSpace__ecere__com__Instance * module, char * name);
memberExp->member.memberType = 3;
}
else
-Compiler_Error("no set defined for property %s of class %s\n", prop->name, prop->_class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "no set defined for property %s of class %s\n", (((void *)0))), prop->name, prop->_class->fullName);
}
}
else
else
{
if(((unsigned int)((exp->usage & 0x40) >> 6)))
-Compiler_Error("cannot obtain address of property\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "cannot obtain address of property\n", (((void *)0))));
else if(!prop->Get)
-Compiler_Error("no get defined for property %s of class %s\n", prop->name, prop->_class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "no get defined for property %s of class %s\n", (((void *)0))), prop->name, prop->_class->fullName);
else if(((unsigned int)((exp->usage & 0x80) >> 7)))
-Compiler_Error("no get defined for property %s of class %s\n", prop->name, prop->_class->fullName);
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "no get defined for property %s of class %s\n", (((void *)0))), prop->name, prop->_class->fullName);
}
}
}
extern void Compiler_Warning(char * format, ...);
+extern char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern void * __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Write;
parsedType = (((void *)0));
if(parseTypeError)
{
-Compiler_Warning("parsing type %s\n", string);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "parsing type %s\n", (((void *)0))), string);
}
}
else
{
-Compiler_Warning("parsing type %s\n", string);
+Compiler_Warning(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "parsing type %s\n", (((void *)0))), string);
decl = baseDecl;
}
yylloc = oldLocation;
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
SOURCES = \
ecc.ec
-RESOURCES =
+RESOURCES = \
+ locale/zh_CN/LC_MESSAGES/ecc.mo
# CROSS-PLATFORM MAGIC
$(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
$(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME)
$(STRIP) $(STRIPOPT) $(TARGET)
+ $(EAR) awq $(TARGET) locale/zh_CN/LC_MESSAGES/ecc.mo "locale/zh_CN/LC_MESSAGES"
$(call cpq,$(TARGET),../../obj/$(PLATFORM)/bin/)
# SYMBOL RULES
}
if(!valid)
- printf("Syntax:\n ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n");
+ printf($"Syntax:\n ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n");
else
{
DualPipe cppOutput;
],
"ResourcesPath" : "",
"Resources" : [
-
+ {
+ "Folder" : "locale",
+ "Files" : [
+ {
+ "Folder" : "zh_CN",
+ "Files" : [
+ {
+ "Folder" : "LC_MESSAGES",
+ "Files" : [
+ "ecc.mo"
+ ]
+ }
+ ]
+ }
+ ]
+ }
]
}
\ No newline at end of file
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: ecere\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2012-02-19 20:14+0900\n"
+"Last-Translator: Jerome St-Louis <jerome@ecere.com>\n"
+"Language-Team: ec <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Basepath: ..\\..\\..\\\n"
+
+#: .\ecc.ec:308
+msgid ""
+"Syntax:\n"
+" ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n"
+msgstr ""
+"Syntax:\n"
+" ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n"
+
+#~ msgid " [Get]\n"
+#~ msgstr " [Get]\n"
+
+#~ msgid " [Set]\n"
+#~ msgstr " [Set]\n"
+
+#~ msgid " [Virtual]\n"
+#~ msgstr " [Virtual]\n"
+
+#~ msgid " [Expression]\n"
+#~ msgstr " [Expression]\n"
+
+#~ msgid " [Identifier]\n"
+#~ msgstr " [Identifier]\n"
+
+#~ msgid " [None]\n"
+#~ msgstr " [None]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Get]\n"
+#~ msgstr " [Get]\n"
+
+#~ msgid " [Imported Methods]\n"
+#~ msgstr " [Imported Methods]\n"
+
+#~ msgid " [Imported Properties]\n"
+#~ msgstr " [Imported Properties]\n"
+
+#~ msgid " [Instantiated]\n"
+#~ msgstr " [Instantiated]\n"
+
+#~ msgid " [Pos]\n"
+#~ msgstr " [Pos]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Public]\n"
+#~ msgstr " [Public]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Set]\n"
+#~ msgstr " [Set]\n"
+
+#~ msgid " [Size]\n"
+#~ msgstr " [Size]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Virtual]\n"
+#~ msgstr " [Virtual]\n"
+
+#~ msgid " [Watchable]\n"
+#~ msgstr " [Watchable]\n"
+
+#~ msgid " [Conversion]\n"
+#~ msgstr " [Conversion]\n"
+
+#~ msgid " [None]\n"
+#~ msgstr " [None]\n"
+
+#~ msgid " [Template Parameters]\n"
+#~ msgstr " [Template Parameters]\n"
+
+#~ msgid " [Base]\n"
+#~ msgstr " [Base]\n"
+
+#~ msgid " [Bit]\n"
+#~ msgstr " [Bit]\n"
+
+#~ msgid " [Defined Class Properties]\n"
+#~ msgstr " [Defined Class Properties]\n"
+
+#~ msgid " [Defined Data Members]\n"
+#~ msgstr " [Defined Data Members]\n"
+
+#~ msgid " [Defined Methods]\n"
+#~ msgstr " [Defined Methods]\n"
+
+#~ msgid " [Defined Properties]\n"
+#~ msgstr " [Defined Properties]\n"
+
+#~ msgid " [Enum Values]\n"
+#~ msgstr " [Enum Values]\n"
+
+#~ msgid " [Enum]\n"
+#~ msgstr " [Enum]\n"
+
+#~ msgid " [Fixed]\n"
+#~ msgstr " [Fixed]\n"
+
+#~ msgid " [Imported Classes]\n"
+#~ msgstr " [Imported Classes]\n"
+
+#~ msgid " [Imported Functions]\n"
+#~ msgstr " [Imported Functions]\n"
+
+#~ msgid " [No Expansion]\n"
+#~ msgstr " [No Expansion]\n"
+
+#~ msgid " [NoHead]\n"
+#~ msgstr " [NoHead]\n"
+
+#~ msgid " [Private Base]\n"
+#~ msgstr " [Private Base]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Public]\n"
+#~ msgstr " [Public]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Static]\n"
+#~ msgstr " [Static]\n"
+
+#~ msgid " [Struct]\n"
+#~ msgstr " [Struct]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Union]\n"
+#~ msgstr " [Union]\n"
+
+#~ msgid " [Unit]\n"
+#~ msgstr " [Unit]\n"
+
+#~ msgid " [Value]\n"
+#~ msgstr " [Value]\n"
+
+#~ msgid " [Watchable]\n"
+#~ msgstr " [Watchable]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Static]\n"
+#~ msgstr " [Static]\n"
+
+#~ msgid " [This]\n"
+#~ msgstr " [This]\n"
+
+#~ msgid " or "
+#~ msgstr " or "
+
+#~ msgid "%s expected to be derived from method class\n"
+#~ msgstr "%s expected to be derived from method class\n"
+
+#~ msgid "%s undefined; assuming extern returning int\n"
+#~ msgstr "%s不确定,假设外部返回整数\n"
+
+#~ msgid "(StaticString)"
+#~ msgstr "(StaticString)"
+
+#~ msgid "(null identifier)"
+#~ msgstr "(空标识符)"
+
+#~ msgid ", expecting "
+#~ msgstr ", expecting "
+
+#~ msgid ":%d:%d: error: "
+#~ msgstr ":%d:%d: error: "
+
+#~ msgid ":%d:%d: warning: "
+#~ msgstr ":%d:%d: warning: "
+
+#~ msgid "Array size not constant int (%s)\n"
+#~ msgstr "数组大小不是常整型(%s)\n"
+
+#~ msgid "Assigning list initializer to non list\n"
+#~ msgstr "列表分配给非列表\n"
+
+#~ msgid "Couldn't determine type of array elements\n"
+#~ msgstr "无法确定数组元素的类型\n"
+
+#~ msgid "Couldn't find member %s to override\n"
+#~ msgstr "不能找到成员%s去继承\n"
+
+#~ msgid "Couldn't open %s\n"
+#~ msgstr "Couldn't open %s\n"
+
+#~ msgid "Deleting"
+#~ msgstr "Deleting"
+
+#~ msgid "Entering state %d\n"
+#~ msgstr "Entering state %d\n"
+
+#~ msgid "Error: discarding"
+#~ msgstr "Error: discarding"
+
+#~ msgid "Error: discarding lookahead"
+#~ msgstr "Error: discarding lookahead"
+
+#~ msgid "Error: popping"
+#~ msgstr "Error: popping"
+
+#~ msgid "Importing took %.3f seconds for %s\n"
+#~ msgstr "Importing took %.3f seconds for %s\n"
+
+#~ msgid "Includes nested too deeply"
+#~ msgstr "Includes nested too deeply"
+
+#~ msgid "Incompatible virtual function %s\n"
+#~ msgstr "不兼容虚函数%s\n"
+
+#~ msgid "Member with same name already exists %s in class %s\n"
+#~ msgstr "Member with same name already exists %s in class %s\n"
+
+#~ msgid "Member with same name already exists %s in member %s\n"
+#~ msgstr "Member with same name already exists %s in member %s\n"
+
+#~ msgid "Multiple field index requires a name\n"
+#~ msgstr "Multiple field index requires a name\n"
+
+#~ msgid "Next token is"
+#~ msgstr "Next token is"
+
+#~ msgid ""
+#~ "No database table defined in this module or database_open already used.\n"
+#~ msgstr ""
+#~ "No database table defined in this module or database_open already used.\n"
+
+#~ msgid "Non-static %s making use of a static class\n"
+#~ msgstr "非静态%s 使用静态类\n"
+
+#~ msgid "Not a type: %s\n"
+#~ msgstr "Not a type: %s\n"
+
+#~ msgid "Now at end of input.\n"
+#~ msgstr "Now at end of input.\n"
+
+#~ msgid "Property %s not found in class %s\n"
+#~ msgstr "属性%s在类%s中未能找到\n"
+
+#~ msgid "Public %s making use of a private class\n"
+#~ msgstr "公共的%s使用私有类\n"
+
+#~ msgid "Reading a token: "
+#~ msgstr "Reading a token: "
+
+#~ msgid "Recursion in defined expression %s\n"
+#~ msgstr "Recursion in defined expression %s\n"
+
+#~ msgid "Redefinition of %s (defining as %s, already defined as %s)\n"
+#~ msgstr "重复定义%s (定义%s, 已经存在定义%s)\n"
+
+#~ msgid "Redefinition of %s ignored\n"
+#~ msgstr "Redefinition of %s ignored\n"
+
+#~ msgid "Redefinition of method %s in class %s\n"
+#~ msgstr "Redefinition of method %s in class %s\n"
+
+#~ msgid "Reducing stack by rule %d (line %u), "
+#~ msgstr "Reducing stack by rule %d (line %u), "
+
+#~ msgid "Shifting"
+#~ msgstr "Shifting"
+
+#~ msgid "Stack now"
+#~ msgstr "Stack now"
+
+#~ msgid "Stack size increased to %lu\n"
+#~ msgstr "Stack size increased to %lu\n"
+
+#~ msgid "Starting parse\n"
+#~ msgstr "Starting parse\n"
+
+#~ msgid ""
+#~ "Syntax:\n"
+#~ " ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-"
+#~ "symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-"
+#~ "D<definition>]* -c <input>\n"
+#~ msgstr ""
+#~ "Syntax:\n"
+#~ " ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-"
+#~ "symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-"
+#~ "D<definition>]* -c <input>\n"
+
+#~ msgid ""
+#~ "Syntax:\n"
+#~ " ecs [-t <target platform>] <input>[, <input>]* -o <output>\n"
+#~ msgstr ""
+#~ "Syntax:\n"
+#~ " ecs [-t <target platform>] <input>[, <input>]* -o <output>\n"
+
+#~ msgid "[Base]"
+#~ msgstr "[Base]"
+
+#~ msgid "[Bit]"
+#~ msgstr "[Bit]"
+
+#~ msgid "[Conversion]"
+#~ msgstr "[Conversion]"
+
+#~ msgid "[Data member]"
+#~ msgstr "[Data member]"
+
+#~ msgid "[Defined Class Properties]"
+#~ msgstr "[Defined Class Properties]"
+
+#~ msgid "[Defined Classes]"
+#~ msgstr "[Defined Classes]"
+
+#~ msgid "[Defined Classes]\n"
+#~ msgstr "[Defined Classes]\n"
+
+#~ msgid "[Defined Data Members]"
+#~ msgstr "[Defined Data Members]"
+
+#~ msgid "[Defined Data]"
+#~ msgstr "[Defined Data]"
+
+#~ msgid "[Defined Data]\n"
+#~ msgstr "[Defined Data]\n"
+
+#~ msgid "[Defined Expressions]"
+#~ msgstr "[Defined Expressions]"
+
+#~ msgid "[Defined Expressions]\n"
+#~ msgstr "[Defined Expressions]\n"
+
+#~ msgid "[Defined Functions]"
+#~ msgstr "[Defined Functions]"
+
+#~ msgid "[Defined Functions]\n"
+#~ msgstr "[Defined Functions]\n"
+
+#~ msgid "[Defined Methods]"
+#~ msgstr "[Defined Methods]"
+
+#~ msgid "[Defined Properties]"
+#~ msgstr "[Defined Properties]"
+
+#~ msgid "[Enum Values]"
+#~ msgstr "[Enum Values]"
+
+#~ msgid "[Enum]"
+#~ msgstr "[Enum]"
+
+#~ msgid "[Expression]"
+#~ msgstr "[Expression]"
+
+#~ msgid "[Fixed]"
+#~ msgstr "[Fixed]"
+
+#~ msgid "[Get]"
+#~ msgstr "[Get]"
+
+#~ msgid "[Global Instance]"
+#~ msgstr "[Global Instance]"
+
+#~ msgid "[Global Instance]\n"
+#~ msgstr "[Global Instance]\n"
+
+#~ msgid "[Identifier]"
+#~ msgstr "[Identifier]"
+
+#~ msgid "[Imported Classes]"
+#~ msgstr "[Imported Classes]"
+
+#~ msgid "[Imported Functions]"
+#~ msgstr "[Imported Functions]"
+
+#~ msgid "[Imported Methods]"
+#~ msgstr "[Imported Methods]"
+
+#~ msgid "[Imported Modules]"
+#~ msgstr "[Imported Modules]"
+
+#~ msgid "[Imported Modules]\n"
+#~ msgstr "[Imported Modules]\n"
+
+#~ msgid "[Imported Properties]"
+#~ msgstr "[Imported Properties]"
+
+#~ msgid "[Instantiated]"
+#~ msgstr "[Instantiated]"
+
+#~ msgid "[Method]"
+#~ msgstr "[Method]"
+
+#~ msgid "[No Expansion]"
+#~ msgstr "[No Expansion]"
+
+#~ msgid "[NoHead]"
+#~ msgstr "[NoHead]"
+
+#~ msgid "[None]"
+#~ msgstr "[None]"
+
+#~ msgid "[Pos]"
+#~ msgstr "[Pos]"
+
+#~ msgid "[Private Base]"
+#~ msgstr "[Private Base]"
+
+#~ msgid "[Private]"
+#~ msgstr "[Private]"
+
+#~ msgid "[Property]"
+#~ msgstr "[Property]"
+
+#~ msgid "[Public]"
+#~ msgstr "[Public]"
+
+#~ msgid "[Remote]"
+#~ msgstr "[Remote]"
+
+#~ msgid "[Set]"
+#~ msgstr "[Set]"
+
+#~ msgid "[Size]"
+#~ msgstr "[Size]"
+
+#~ msgid "[Static]"
+#~ msgstr "[Static]"
+
+#~ msgid "[Struct]"
+#~ msgstr "[Struct]"
+
+#~ msgid "[Template Parameters]"
+#~ msgstr "[Template Parameters]"
+
+#~ msgid "[This]"
+#~ msgstr "[This]"
+
+#~ msgid "[Type]"
+#~ msgstr "[Type]"
+
+#~ msgid "[Union]"
+#~ msgstr "[Union]"
+
+#~ msgid "[Unit]"
+#~ msgstr "[Unit]"
+
+#~ msgid "[Value]"
+#~ msgstr "[Value]"
+
+#~ msgid "[Virtual]"
+#~ msgstr "[Virtual]"
+
+#~ msgid "[Watchable]"
+#~ msgstr "[Watchable]"
+
+#~ msgid "bad buffer in yy_scan_bytes()"
+#~ msgstr "bad buffer in yy_scan_bytes()"
+
+#~ msgid "callable object undefined; extern assuming returning int\n"
+#~ msgstr "可调用对象未定义,外部假设返回整数\n"
+
+#~ msgid "called object %s is not a function\n"
+#~ msgstr "调用对象%s不是一个函数\n"
+
+#~ msgid "cannot add two pointers\n"
+#~ msgstr "cannot add two pointers\n"
+
+#~ msgid "cannot dereference type\n"
+#~ msgstr "cannot dereference type\n"
+
+#~ msgid "class data member"
+#~ msgstr "类数据成员"
+
+#~ msgid "class member instance"
+#~ msgstr "类成员实例"
+
+#~ msgid "couldn't determine type of %s; expected %s\n"
+#~ msgstr "无法确定%s的类型; 期望%s\n"
+
+#~ msgid "couldn't determine type of %s\n"
+#~ msgstr "无法确定%s的类型\n"
+
+#~ msgid "couldn't find member %s in class %s\n"
+#~ msgstr "不能找到成员%s在类%s中\n"
+
+#~ msgid "couldn't find virtual method %s in class %s\n"
+#~ msgstr "不能找到虚方法%s在类%s中\n"
+
+#~ msgid "different levels of indirection\n"
+#~ msgstr "different levels of indirection\n"
+
+#~ msgid "error: unhandled type populating instance\n"
+#~ msgstr "error: unhandled type populating instance\n"
+
+#~ msgid "fatal error - scanner input buffer overflow"
+#~ msgstr "fatal error - scanner input buffer overflow"
+
+#~ msgid "fatal flex scanner internal error--end of buffer missed"
+#~ msgstr "fatal flex scanner internal error--end of buffer missed"
+
+#~ msgid "fatal flex scanner internal error--no action found"
+#~ msgstr "fatal flex scanner internal error--no action found"
+
+#~ msgid "flex scanner push-back overflow"
+#~ msgstr "flex scanner push-back overflow"
+
+#~ msgid "incompatible expression %s (%s); expected %s\n"
+#~ msgstr "incompatible expression %s (%s); expected %s\n"
+
+#~ msgid "incompatible expressions %s (%s) and %s (%s)\n"
+#~ msgstr "不兼容的表达示%s (%s) 和%s (%s)\n"
+
+#~ msgid "incompatible instance method %s\n"
+#~ msgstr "不兼容的实例方法%s\n"
+
+#~ msgid "incompatible parameter %s (expected %s)\n"
+#~ msgstr "不兼容参数%s (期望%s)\n"
+
+#~ msgid "incompatible return type for function\n"
+#~ msgstr "函数返回类型不兼容\n"
+
+#~ msgid ""
+#~ "input buffer overflow, can't enlarge buffer because scanner uses REJECT"
+#~ msgstr ""
+#~ "input buffer overflow, can't enlarge buffer because scanner uses REJECT"
+
+#~ msgid "input in flex scanner failed"
+#~ msgstr "input in flex scanner failed"
+
+#~ msgid "invalid class specifier %s for object of class %s\n"
+#~ msgstr "无效的类说明%s关于对象类%s\n"
+
+#~ msgid "member operator on non-structure type expression %s\n"
+#~ msgstr "成员操作符对非结构类型表达式%s\n"
+
+#~ msgid "method class must be derived from %s\n"
+#~ msgstr "method class must be derived from %s\n"
+
+#~ msgid "method class should not take an object\n"
+#~ msgstr "method class should not take an object\n"
+
+#~ msgid "not enough arguments for function %s (%d given, expected %d)\n"
+#~ msgstr "参数不够,函数%s (规定%d个, 期望%d个)\n"
+
+#~ msgid "not enough arguments for method %s::%s (%d given, expected %d)\n"
+#~ msgstr "参数不够,方法%s::%s(规定%d个, 期望%d个)\n"
+
+#~ msgid "not enough parameters\n"
+#~ msgstr "没有足够参数\n"
+
+#~ msgid "nterm %s ("
+#~ msgstr "nterm %s ("
+
+#~ msgid "operating on %s and %s with an untyped result, assuming %s\n"
+#~ msgstr "operating on %s and %s with an untyped result, assuming %s\n"
+
+#~ msgid "operator %s illegal on pointer\n"
+#~ msgstr "operator %s illegal on pointer\n"
+
+#~ msgid "out of dynamic memory in yy_create_buffer()"
+#~ msgstr "out of dynamic memory in yy_create_buffer()"
+
+#~ msgid "out of dynamic memory in yy_scan_buffer()"
+#~ msgstr "out of dynamic memory in yy_scan_buffer()"
+
+#~ msgid "out of dynamic memory in yy_scan_bytes()"
+#~ msgstr "out of dynamic memory in yy_scan_bytes()"
+
+#~ msgid "out of memory expanding start-condition stack"
+#~ msgstr "out of memory expanding start-condition stack"
+
+#~ msgid "overriding class expected to be derived from method class\n"
+#~ msgstr "overriding class expected to be derived from method class\n"
+
+#~ msgid "parser stack overflow"
+#~ msgstr "parser stack overflow"
+
+#~ msgid "redefinition of class %s\n"
+#~ msgstr "redefinition of class %s\n"
+
+#~ msgid "redefinition of constructor for class %s\n"
+#~ msgstr "重复定义构造类%s\n"
+
+#~ msgid "redefinition of destructor for class %s\n"
+#~ msgstr "重复定义析构类%s\n"
+
+#~ msgid "start-condition stack underflow"
+#~ msgstr "start-condition stack underflow"
+
+#~ msgid "syntax error"
+#~ msgstr "syntax error"
+
+#~ msgid "syntax error, unexpected "
+#~ msgstr "syntax error, unexpected "
+
+#~ msgid "syntax error: cannot back up"
+#~ msgstr "syntax error: cannot back up"
+
+#~ msgid "syntax error; also virtual memory exhausted"
+#~ msgstr "syntax error; also virtual memory exhausted"
+
+#~ msgid "syntax error\n"
+#~ msgstr "syntax error\n"
+
+#~ msgid "token %s ("
+#~ msgstr "token %s ("
+
+#~ msgid "too many arguments for function %s (%d given, expected %d)\n"
+#~ msgstr "参数太多,函数%s (规定%d个, 期望%d个)\n"
+
+#~ msgid "too many arguments for method %s::%s (%d given, expected %d)\n"
+#~ msgstr "参数太多,方法%s::%s(规定%d个, 期望%d个)\n"
+
+#~ msgid "too many initializers for instantiation of class %s\n"
+#~ msgstr "too many initializers for instantiation of class %s\n"
+
+#~ msgid "too many parameters\n"
+#~ msgstr "太多参数\n"
+
+#~ msgid "undefined class %s\n"
+#~ msgstr "未定义类%s\n"
+
+#~ msgid "unresolved identifier %s::%s\n"
+#~ msgstr "不确定的标识符%s::%s\n"
+
+#~ msgid "unresolved identifier %s; expected %s\n"
+#~ msgstr "不确定的标识符%s; 期望%s\n"
+
+#~ msgid "unresolved identifier %s\n"
+#~ msgstr "不确定的标识符%s\n"
+
+#~ msgid "unresolved symbol used as an instance method %s\n"
+#~ msgstr "unresolved symbol used as an instance method %s\n"
SOURCES = \
ecp.ec
-RESOURCES =
+RESOURCES = \
+ locale/zh_CN/LC_MESSAGES/ecp.mo
# CROSS-PLATFORM MAGIC
$(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
$(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME)
$(STRIP) $(STRIPOPT) $(TARGET)
+ $(EAR) awq $(TARGET) locale/zh_CN/LC_MESSAGES/ecp.mo "locale/zh_CN/LC_MESSAGES"
$(call cpq,$(TARGET),../../obj/$(PLATFORM)/bin/)
# SYMBOL RULES
}
if(!valid)
- printf("Syntax:\n ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n");
+ printf($"Syntax:\n ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n");
else
{
char command[1024];
],
"ResourcesPath" : "",
"Resources" : [
-
+ {
+ "Folder" : "locale",
+ "Files" : [
+ {
+ "Folder" : "zh_CN",
+ "Files" : [
+ {
+ "Folder" : "LC_MESSAGES",
+ "Files" : [
+ "ecp.mo"
+ ]
+ }
+ ]
+ }
+ ]
+ }
]
}
\ No newline at end of file
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: ecere\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2012-02-19 20:14+0900\n"
+"Last-Translator: Jerome St-Louis <jerome@ecere.com>\n"
+"Language-Team: ec <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Basepath: ..\\..\\..\\\n"
+
+#: .\ecp.ec:1458
+msgid ""
+"Syntax:\n"
+" ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n"
+msgstr ""
+"Syntax:\n"
+" ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-D<definition>]* -c <input>\n"
+
+#~ msgid " [Get]\n"
+#~ msgstr " [Get]\n"
+
+#~ msgid " [Set]\n"
+#~ msgstr " [Set]\n"
+
+#~ msgid " [Virtual]\n"
+#~ msgstr " [Virtual]\n"
+
+#~ msgid " [Expression]\n"
+#~ msgstr " [Expression]\n"
+
+#~ msgid " [Identifier]\n"
+#~ msgstr " [Identifier]\n"
+
+#~ msgid " [None]\n"
+#~ msgstr " [None]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Get]\n"
+#~ msgstr " [Get]\n"
+
+#~ msgid " [Imported Methods]\n"
+#~ msgstr " [Imported Methods]\n"
+
+#~ msgid " [Imported Properties]\n"
+#~ msgstr " [Imported Properties]\n"
+
+#~ msgid " [Instantiated]\n"
+#~ msgstr " [Instantiated]\n"
+
+#~ msgid " [Pos]\n"
+#~ msgstr " [Pos]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Public]\n"
+#~ msgstr " [Public]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Set]\n"
+#~ msgstr " [Set]\n"
+
+#~ msgid " [Size]\n"
+#~ msgstr " [Size]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Virtual]\n"
+#~ msgstr " [Virtual]\n"
+
+#~ msgid " [Watchable]\n"
+#~ msgstr " [Watchable]\n"
+
+#~ msgid " [Conversion]\n"
+#~ msgstr " [Conversion]\n"
+
+#~ msgid " [None]\n"
+#~ msgstr " [None]\n"
+
+#~ msgid " [Template Parameters]\n"
+#~ msgstr " [Template Parameters]\n"
+
+#~ msgid " [Base]\n"
+#~ msgstr " [Base]\n"
+
+#~ msgid " [Bit]\n"
+#~ msgstr " [Bit]\n"
+
+#~ msgid " [Defined Class Properties]\n"
+#~ msgstr " [Defined Class Properties]\n"
+
+#~ msgid " [Defined Data Members]\n"
+#~ msgstr " [Defined Data Members]\n"
+
+#~ msgid " [Defined Methods]\n"
+#~ msgstr " [Defined Methods]\n"
+
+#~ msgid " [Defined Properties]\n"
+#~ msgstr " [Defined Properties]\n"
+
+#~ msgid " [Enum Values]\n"
+#~ msgstr " [Enum Values]\n"
+
+#~ msgid " [Enum]\n"
+#~ msgstr " [Enum]\n"
+
+#~ msgid " [Fixed]\n"
+#~ msgstr " [Fixed]\n"
+
+#~ msgid " [Imported Classes]\n"
+#~ msgstr " [Imported Classes]\n"
+
+#~ msgid " [Imported Functions]\n"
+#~ msgstr " [Imported Functions]\n"
+
+#~ msgid " [No Expansion]\n"
+#~ msgstr " [No Expansion]\n"
+
+#~ msgid " [NoHead]\n"
+#~ msgstr " [NoHead]\n"
+
+#~ msgid " [Private Base]\n"
+#~ msgstr " [Private Base]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Public]\n"
+#~ msgstr " [Public]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Static]\n"
+#~ msgstr " [Static]\n"
+
+#~ msgid " [Struct]\n"
+#~ msgstr " [Struct]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Union]\n"
+#~ msgstr " [Union]\n"
+
+#~ msgid " [Unit]\n"
+#~ msgstr " [Unit]\n"
+
+#~ msgid " [Value]\n"
+#~ msgstr " [Value]\n"
+
+#~ msgid " [Watchable]\n"
+#~ msgstr " [Watchable]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Static]\n"
+#~ msgstr " [Static]\n"
+
+#~ msgid " [This]\n"
+#~ msgstr " [This]\n"
+
+#~ msgid " or "
+#~ msgstr " or "
+
+#~ msgid "%s expected to be derived from method class\n"
+#~ msgstr "%s expected to be derived from method class\n"
+
+#~ msgid "%s undefined; assuming extern returning int\n"
+#~ msgstr "%s不确定,假设外部返回整数\n"
+
+#~ msgid "(StaticString)"
+#~ msgstr "(StaticString)"
+
+#~ msgid "(null identifier)"
+#~ msgstr "(空标识符)"
+
+#~ msgid ", expecting "
+#~ msgstr ", expecting "
+
+#~ msgid ":%d:%d: error: "
+#~ msgstr ":%d:%d: error: "
+
+#~ msgid ":%d:%d: warning: "
+#~ msgstr ":%d:%d: warning: "
+
+#~ msgid "Array size not constant int (%s)\n"
+#~ msgstr "数组大小不是常整型(%s)\n"
+
+#~ msgid "Assigning list initializer to non list\n"
+#~ msgstr "列表分配给非列表\n"
+
+#~ msgid "Couldn't determine type of array elements\n"
+#~ msgstr "无法确定数组元素的类型\n"
+
+#~ msgid "Couldn't find member %s to override\n"
+#~ msgstr "不能找到成员%s去继承\n"
+
+#~ msgid "Couldn't open %s\n"
+#~ msgstr "Couldn't open %s\n"
+
+#~ msgid "Deleting"
+#~ msgstr "Deleting"
+
+#~ msgid "Entering state %d\n"
+#~ msgstr "Entering state %d\n"
+
+#~ msgid "Error: discarding"
+#~ msgstr "Error: discarding"
+
+#~ msgid "Error: discarding lookahead"
+#~ msgstr "Error: discarding lookahead"
+
+#~ msgid "Error: popping"
+#~ msgstr "Error: popping"
+
+#~ msgid "Importing took %.3f seconds for %s\n"
+#~ msgstr "Importing took %.3f seconds for %s\n"
+
+#~ msgid "Includes nested too deeply"
+#~ msgstr "Includes nested too deeply"
+
+#~ msgid "Incompatible virtual function %s\n"
+#~ msgstr "不兼容虚函数%s\n"
+
+#~ msgid "Member with same name already exists %s in class %s\n"
+#~ msgstr "Member with same name already exists %s in class %s\n"
+
+#~ msgid "Member with same name already exists %s in member %s\n"
+#~ msgstr "Member with same name already exists %s in member %s\n"
+
+#~ msgid "Multiple field index requires a name\n"
+#~ msgstr "Multiple field index requires a name\n"
+
+#~ msgid "Next token is"
+#~ msgstr "Next token is"
+
+#~ msgid ""
+#~ "No database table defined in this module or database_open already used.\n"
+#~ msgstr ""
+#~ "No database table defined in this module or database_open already used.\n"
+
+#~ msgid "Non-static %s making use of a static class\n"
+#~ msgstr "非静态%s 使用静态类\n"
+
+#~ msgid "Not a type: %s\n"
+#~ msgstr "Not a type: %s\n"
+
+#~ msgid "Now at end of input.\n"
+#~ msgstr "Now at end of input.\n"
+
+#~ msgid "Property %s not found in class %s\n"
+#~ msgstr "属性%s在类%s中未能找到\n"
+
+#~ msgid "Public %s making use of a private class\n"
+#~ msgstr "公共的%s使用私有类\n"
+
+#~ msgid "Reading a token: "
+#~ msgstr "Reading a token: "
+
+#~ msgid "Recursion in defined expression %s\n"
+#~ msgstr "Recursion in defined expression %s\n"
+
+#~ msgid "Redefinition of %s (defining as %s, already defined as %s)\n"
+#~ msgstr "重复定义%s (定义%s, 已经存在定义%s)\n"
+
+#~ msgid "Redefinition of %s ignored\n"
+#~ msgstr "Redefinition of %s ignored\n"
+
+#~ msgid "Redefinition of method %s in class %s\n"
+#~ msgstr "Redefinition of method %s in class %s\n"
+
+#~ msgid "Reducing stack by rule %d (line %u), "
+#~ msgstr "Reducing stack by rule %d (line %u), "
+
+#~ msgid "Shifting"
+#~ msgstr "Shifting"
+
+#~ msgid "Stack now"
+#~ msgstr "Stack now"
+
+#~ msgid "Stack size increased to %lu\n"
+#~ msgstr "Stack size increased to %lu\n"
+
+#~ msgid "Starting parse\n"
+#~ msgstr "Starting parse\n"
+
+#~ msgid ""
+#~ "Syntax:\n"
+#~ " ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-"
+#~ "symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-"
+#~ "D<definition>]* -c <input>\n"
+#~ msgstr ""
+#~ "Syntax:\n"
+#~ " ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-"
+#~ "symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-"
+#~ "D<definition>]* -c <input>\n"
+
+#~ msgid ""
+#~ "Syntax:\n"
+#~ " ecs [-t <target platform>] <input>[, <input>]* -o <output>\n"
+#~ msgstr ""
+#~ "Syntax:\n"
+#~ " ecs [-t <target platform>] <input>[, <input>]* -o <output>\n"
+
+#~ msgid "[Base]"
+#~ msgstr "[Base]"
+
+#~ msgid "[Bit]"
+#~ msgstr "[Bit]"
+
+#~ msgid "[Conversion]"
+#~ msgstr "[Conversion]"
+
+#~ msgid "[Data member]"
+#~ msgstr "[Data member]"
+
+#~ msgid "[Defined Class Properties]"
+#~ msgstr "[Defined Class Properties]"
+
+#~ msgid "[Defined Classes]"
+#~ msgstr "[Defined Classes]"
+
+#~ msgid "[Defined Classes]\n"
+#~ msgstr "[Defined Classes]\n"
+
+#~ msgid "[Defined Data Members]"
+#~ msgstr "[Defined Data Members]"
+
+#~ msgid "[Defined Data]"
+#~ msgstr "[Defined Data]"
+
+#~ msgid "[Defined Data]\n"
+#~ msgstr "[Defined Data]\n"
+
+#~ msgid "[Defined Expressions]"
+#~ msgstr "[Defined Expressions]"
+
+#~ msgid "[Defined Expressions]\n"
+#~ msgstr "[Defined Expressions]\n"
+
+#~ msgid "[Defined Functions]"
+#~ msgstr "[Defined Functions]"
+
+#~ msgid "[Defined Functions]\n"
+#~ msgstr "[Defined Functions]\n"
+
+#~ msgid "[Defined Methods]"
+#~ msgstr "[Defined Methods]"
+
+#~ msgid "[Defined Properties]"
+#~ msgstr "[Defined Properties]"
+
+#~ msgid "[Enum Values]"
+#~ msgstr "[Enum Values]"
+
+#~ msgid "[Enum]"
+#~ msgstr "[Enum]"
+
+#~ msgid "[Expression]"
+#~ msgstr "[Expression]"
+
+#~ msgid "[Fixed]"
+#~ msgstr "[Fixed]"
+
+#~ msgid "[Get]"
+#~ msgstr "[Get]"
+
+#~ msgid "[Global Instance]"
+#~ msgstr "[Global Instance]"
+
+#~ msgid "[Global Instance]\n"
+#~ msgstr "[Global Instance]\n"
+
+#~ msgid "[Identifier]"
+#~ msgstr "[Identifier]"
+
+#~ msgid "[Imported Classes]"
+#~ msgstr "[Imported Classes]"
+
+#~ msgid "[Imported Functions]"
+#~ msgstr "[Imported Functions]"
+
+#~ msgid "[Imported Methods]"
+#~ msgstr "[Imported Methods]"
+
+#~ msgid "[Imported Modules]"
+#~ msgstr "[Imported Modules]"
+
+#~ msgid "[Imported Modules]\n"
+#~ msgstr "[Imported Modules]\n"
+
+#~ msgid "[Imported Properties]"
+#~ msgstr "[Imported Properties]"
+
+#~ msgid "[Instantiated]"
+#~ msgstr "[Instantiated]"
+
+#~ msgid "[Method]"
+#~ msgstr "[Method]"
+
+#~ msgid "[No Expansion]"
+#~ msgstr "[No Expansion]"
+
+#~ msgid "[NoHead]"
+#~ msgstr "[NoHead]"
+
+#~ msgid "[None]"
+#~ msgstr "[None]"
+
+#~ msgid "[Pos]"
+#~ msgstr "[Pos]"
+
+#~ msgid "[Private Base]"
+#~ msgstr "[Private Base]"
+
+#~ msgid "[Private]"
+#~ msgstr "[Private]"
+
+#~ msgid "[Property]"
+#~ msgstr "[Property]"
+
+#~ msgid "[Public]"
+#~ msgstr "[Public]"
+
+#~ msgid "[Remote]"
+#~ msgstr "[Remote]"
+
+#~ msgid "[Set]"
+#~ msgstr "[Set]"
+
+#~ msgid "[Size]"
+#~ msgstr "[Size]"
+
+#~ msgid "[Static]"
+#~ msgstr "[Static]"
+
+#~ msgid "[Struct]"
+#~ msgstr "[Struct]"
+
+#~ msgid "[Template Parameters]"
+#~ msgstr "[Template Parameters]"
+
+#~ msgid "[This]"
+#~ msgstr "[This]"
+
+#~ msgid "[Type]"
+#~ msgstr "[Type]"
+
+#~ msgid "[Union]"
+#~ msgstr "[Union]"
+
+#~ msgid "[Unit]"
+#~ msgstr "[Unit]"
+
+#~ msgid "[Value]"
+#~ msgstr "[Value]"
+
+#~ msgid "[Virtual]"
+#~ msgstr "[Virtual]"
+
+#~ msgid "[Watchable]"
+#~ msgstr "[Watchable]"
+
+#~ msgid "bad buffer in yy_scan_bytes()"
+#~ msgstr "bad buffer in yy_scan_bytes()"
+
+#~ msgid "callable object undefined; extern assuming returning int\n"
+#~ msgstr "可调用对象未定义,外部假设返回整数\n"
+
+#~ msgid "called object %s is not a function\n"
+#~ msgstr "调用对象%s不是一个函数\n"
+
+#~ msgid "cannot add two pointers\n"
+#~ msgstr "cannot add two pointers\n"
+
+#~ msgid "cannot dereference type\n"
+#~ msgstr "cannot dereference type\n"
+
+#~ msgid "class data member"
+#~ msgstr "类数据成员"
+
+#~ msgid "class member instance"
+#~ msgstr "类成员实例"
+
+#~ msgid "couldn't determine type of %s; expected %s\n"
+#~ msgstr "无法确定%s的类型; 期望%s\n"
+
+#~ msgid "couldn't determine type of %s\n"
+#~ msgstr "无法确定%s的类型\n"
+
+#~ msgid "couldn't find member %s in class %s\n"
+#~ msgstr "不能找到成员%s在类%s中\n"
+
+#~ msgid "couldn't find virtual method %s in class %s\n"
+#~ msgstr "不能找到虚方法%s在类%s中\n"
+
+#~ msgid "different levels of indirection\n"
+#~ msgstr "different levels of indirection\n"
+
+#~ msgid "error: unhandled type populating instance\n"
+#~ msgstr "error: unhandled type populating instance\n"
+
+#~ msgid "fatal error - scanner input buffer overflow"
+#~ msgstr "fatal error - scanner input buffer overflow"
+
+#~ msgid "fatal flex scanner internal error--end of buffer missed"
+#~ msgstr "fatal flex scanner internal error--end of buffer missed"
+
+#~ msgid "fatal flex scanner internal error--no action found"
+#~ msgstr "fatal flex scanner internal error--no action found"
+
+#~ msgid "flex scanner push-back overflow"
+#~ msgstr "flex scanner push-back overflow"
+
+#~ msgid "incompatible expression %s (%s); expected %s\n"
+#~ msgstr "incompatible expression %s (%s); expected %s\n"
+
+#~ msgid "incompatible expressions %s (%s) and %s (%s)\n"
+#~ msgstr "不兼容的表达示%s (%s) 和%s (%s)\n"
+
+#~ msgid "incompatible instance method %s\n"
+#~ msgstr "不兼容的实例方法%s\n"
+
+#~ msgid "incompatible parameter %s (expected %s)\n"
+#~ msgstr "不兼容参数%s (期望%s)\n"
+
+#~ msgid "incompatible return type for function\n"
+#~ msgstr "函数返回类型不兼容\n"
+
+#~ msgid ""
+#~ "input buffer overflow, can't enlarge buffer because scanner uses REJECT"
+#~ msgstr ""
+#~ "input buffer overflow, can't enlarge buffer because scanner uses REJECT"
+
+#~ msgid "input in flex scanner failed"
+#~ msgstr "input in flex scanner failed"
+
+#~ msgid "invalid class specifier %s for object of class %s\n"
+#~ msgstr "无效的类说明%s关于对象类%s\n"
+
+#~ msgid "member operator on non-structure type expression %s\n"
+#~ msgstr "成员操作符对非结构类型表达式%s\n"
+
+#~ msgid "method class must be derived from %s\n"
+#~ msgstr "method class must be derived from %s\n"
+
+#~ msgid "method class should not take an object\n"
+#~ msgstr "method class should not take an object\n"
+
+#~ msgid "not enough arguments for function %s (%d given, expected %d)\n"
+#~ msgstr "参数不够,函数%s (规定%d个, 期望%d个)\n"
+
+#~ msgid "not enough arguments for method %s::%s (%d given, expected %d)\n"
+#~ msgstr "参数不够,方法%s::%s(规定%d个, 期望%d个)\n"
+
+#~ msgid "not enough parameters\n"
+#~ msgstr "没有足够参数\n"
+
+#~ msgid "nterm %s ("
+#~ msgstr "nterm %s ("
+
+#~ msgid "operating on %s and %s with an untyped result, assuming %s\n"
+#~ msgstr "operating on %s and %s with an untyped result, assuming %s\n"
+
+#~ msgid "operator %s illegal on pointer\n"
+#~ msgstr "operator %s illegal on pointer\n"
+
+#~ msgid "out of dynamic memory in yy_create_buffer()"
+#~ msgstr "out of dynamic memory in yy_create_buffer()"
+
+#~ msgid "out of dynamic memory in yy_scan_buffer()"
+#~ msgstr "out of dynamic memory in yy_scan_buffer()"
+
+#~ msgid "out of dynamic memory in yy_scan_bytes()"
+#~ msgstr "out of dynamic memory in yy_scan_bytes()"
+
+#~ msgid "out of memory expanding start-condition stack"
+#~ msgstr "out of memory expanding start-condition stack"
+
+#~ msgid "overriding class expected to be derived from method class\n"
+#~ msgstr "overriding class expected to be derived from method class\n"
+
+#~ msgid "parser stack overflow"
+#~ msgstr "parser stack overflow"
+
+#~ msgid "redefinition of class %s\n"
+#~ msgstr "redefinition of class %s\n"
+
+#~ msgid "redefinition of constructor for class %s\n"
+#~ msgstr "重复定义构造类%s\n"
+
+#~ msgid "redefinition of destructor for class %s\n"
+#~ msgstr "重复定义析构类%s\n"
+
+#~ msgid "start-condition stack underflow"
+#~ msgstr "start-condition stack underflow"
+
+#~ msgid "syntax error"
+#~ msgstr "syntax error"
+
+#~ msgid "syntax error, unexpected "
+#~ msgstr "syntax error, unexpected "
+
+#~ msgid "syntax error: cannot back up"
+#~ msgstr "syntax error: cannot back up"
+
+#~ msgid "syntax error; also virtual memory exhausted"
+#~ msgstr "syntax error; also virtual memory exhausted"
+
+#~ msgid "syntax error\n"
+#~ msgstr "syntax error\n"
+
+#~ msgid "token %s ("
+#~ msgstr "token %s ("
+
+#~ msgid "too many arguments for function %s (%d given, expected %d)\n"
+#~ msgstr "参数太多,函数%s (规定%d个, 期望%d个)\n"
+
+#~ msgid "too many arguments for method %s::%s (%d given, expected %d)\n"
+#~ msgstr "参数太多,方法%s::%s(规定%d个, 期望%d个)\n"
+
+#~ msgid "too many initializers for instantiation of class %s\n"
+#~ msgstr "too many initializers for instantiation of class %s\n"
+
+#~ msgid "too many parameters\n"
+#~ msgstr "太多参数\n"
+
+#~ msgid "undefined class %s\n"
+#~ msgstr "未定义类%s\n"
+
+#~ msgid "unresolved identifier %s::%s\n"
+#~ msgstr "不确定的标识符%s::%s\n"
+
+#~ msgid "unresolved identifier %s; expected %s\n"
+#~ msgstr "不确定的标识符%s; 期望%s\n"
+
+#~ msgid "unresolved identifier %s\n"
+#~ msgstr "不确定的标识符%s\n"
+
+#~ msgid "unresolved symbol used as an instance method %s\n"
+#~ msgstr "unresolved symbol used as an instance method %s\n"
SOURCES = \
ecs.ec
-RESOURCES =
+RESOURCES = \
+ locale/zh_CN/LC_MESSAGES/ecs.mo
# CROSS-PLATFORM MAGIC
$(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
$(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME)
$(STRIP) $(STRIPOPT) $(TARGET)
+ $(EAR) awq $(TARGET) locale/zh_CN/LC_MESSAGES/ecs.mo "locale/zh_CN/LC_MESSAGES"
$(call cpq,$(TARGET),../../obj/$(PLATFORM)/bin/)
# SYMBOL RULES
valid = false;
if(!valid)
- printf("Syntax:\n ecs [-t <target platform>] <input>[, <input>]* -o <output>\n");
+ printf($"Syntax:\n ecs [-t <target platform>] <input>[, <input>]* -o <output>\n");
else
{
int c;
],
"ResourcesPath" : "",
"Resources" : [
-
+ {
+ "Folder" : "locale",
+ "Files" : [
+ {
+ "Folder" : "zh_CN",
+ "Files" : [
+ {
+ "Folder" : "LC_MESSAGES",
+ "Files" : [
+ "ecs.mo"
+ ]
+ }
+ ]
+ }
+ ]
+ }
]
}
\ No newline at end of file
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: ecere\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2012-02-19 20:14+0900\n"
+"Last-Translator: Jerome St-Louis <jerome@ecere.com>\n"
+"Language-Team: ec <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Basepath: ..\\..\\..\\\n"
+
+#: .\ecs.ec:1704
+msgid ""
+"Syntax:\n"
+" ecs [-t <target platform>] <input>[, <input>]* -o <output>\n"
+msgstr ""
+"Syntax:\n"
+" ecs [-t <target platform>] <input>[, <input>]* -o <output>\n"
+
+#~ msgid " [Get]\n"
+#~ msgstr " [Get]\n"
+
+#~ msgid " [Set]\n"
+#~ msgstr " [Set]\n"
+
+#~ msgid " [Virtual]\n"
+#~ msgstr " [Virtual]\n"
+
+#~ msgid " [Expression]\n"
+#~ msgstr " [Expression]\n"
+
+#~ msgid " [Identifier]\n"
+#~ msgstr " [Identifier]\n"
+
+#~ msgid " [None]\n"
+#~ msgstr " [None]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Get]\n"
+#~ msgstr " [Get]\n"
+
+#~ msgid " [Imported Methods]\n"
+#~ msgstr " [Imported Methods]\n"
+
+#~ msgid " [Imported Properties]\n"
+#~ msgstr " [Imported Properties]\n"
+
+#~ msgid " [Instantiated]\n"
+#~ msgstr " [Instantiated]\n"
+
+#~ msgid " [Pos]\n"
+#~ msgstr " [Pos]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Public]\n"
+#~ msgstr " [Public]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Set]\n"
+#~ msgstr " [Set]\n"
+
+#~ msgid " [Size]\n"
+#~ msgstr " [Size]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Virtual]\n"
+#~ msgstr " [Virtual]\n"
+
+#~ msgid " [Watchable]\n"
+#~ msgstr " [Watchable]\n"
+
+#~ msgid " [Conversion]\n"
+#~ msgstr " [Conversion]\n"
+
+#~ msgid " [None]\n"
+#~ msgstr " [None]\n"
+
+#~ msgid " [Template Parameters]\n"
+#~ msgstr " [Template Parameters]\n"
+
+#~ msgid " [Base]\n"
+#~ msgstr " [Base]\n"
+
+#~ msgid " [Bit]\n"
+#~ msgstr " [Bit]\n"
+
+#~ msgid " [Defined Class Properties]\n"
+#~ msgstr " [Defined Class Properties]\n"
+
+#~ msgid " [Defined Data Members]\n"
+#~ msgstr " [Defined Data Members]\n"
+
+#~ msgid " [Defined Methods]\n"
+#~ msgstr " [Defined Methods]\n"
+
+#~ msgid " [Defined Properties]\n"
+#~ msgstr " [Defined Properties]\n"
+
+#~ msgid " [Enum Values]\n"
+#~ msgstr " [Enum Values]\n"
+
+#~ msgid " [Enum]\n"
+#~ msgstr " [Enum]\n"
+
+#~ msgid " [Fixed]\n"
+#~ msgstr " [Fixed]\n"
+
+#~ msgid " [Imported Classes]\n"
+#~ msgstr " [Imported Classes]\n"
+
+#~ msgid " [Imported Functions]\n"
+#~ msgstr " [Imported Functions]\n"
+
+#~ msgid " [No Expansion]\n"
+#~ msgstr " [No Expansion]\n"
+
+#~ msgid " [NoHead]\n"
+#~ msgstr " [NoHead]\n"
+
+#~ msgid " [Private Base]\n"
+#~ msgstr " [Private Base]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Public]\n"
+#~ msgstr " [Public]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Static]\n"
+#~ msgstr " [Static]\n"
+
+#~ msgid " [Struct]\n"
+#~ msgstr " [Struct]\n"
+
+#~ msgid " [Type]\n"
+#~ msgstr " [Type]\n"
+
+#~ msgid " [Union]\n"
+#~ msgstr " [Union]\n"
+
+#~ msgid " [Unit]\n"
+#~ msgstr " [Unit]\n"
+
+#~ msgid " [Value]\n"
+#~ msgstr " [Value]\n"
+
+#~ msgid " [Watchable]\n"
+#~ msgstr " [Watchable]\n"
+
+#~ msgid " [Private]\n"
+#~ msgstr " [Private]\n"
+
+#~ msgid " [Remote]\n"
+#~ msgstr " [Remote]\n"
+
+#~ msgid " [Static]\n"
+#~ msgstr " [Static]\n"
+
+#~ msgid " [This]\n"
+#~ msgstr " [This]\n"
+
+#~ msgid " or "
+#~ msgstr " or "
+
+#~ msgid "%s expected to be derived from method class\n"
+#~ msgstr "%s expected to be derived from method class\n"
+
+#~ msgid "%s undefined; assuming extern returning int\n"
+#~ msgstr "%s不确定,假设外部返回整数\n"
+
+#~ msgid "(StaticString)"
+#~ msgstr "(StaticString)"
+
+#~ msgid "(null identifier)"
+#~ msgstr "(空标识符)"
+
+#~ msgid ", expecting "
+#~ msgstr ", expecting "
+
+#~ msgid ":%d:%d: error: "
+#~ msgstr ":%d:%d: error: "
+
+#~ msgid ":%d:%d: warning: "
+#~ msgstr ":%d:%d: warning: "
+
+#~ msgid "Array size not constant int (%s)\n"
+#~ msgstr "数组大小不是常整型(%s)\n"
+
+#~ msgid "Assigning list initializer to non list\n"
+#~ msgstr "列表分配给非列表\n"
+
+#~ msgid "Couldn't determine type of array elements\n"
+#~ msgstr "无法确定数组元素的类型\n"
+
+#~ msgid "Couldn't find member %s to override\n"
+#~ msgstr "不能找到成员%s去继承\n"
+
+#~ msgid "Couldn't open %s\n"
+#~ msgstr "Couldn't open %s\n"
+
+#~ msgid "Deleting"
+#~ msgstr "Deleting"
+
+#~ msgid "Entering state %d\n"
+#~ msgstr "Entering state %d\n"
+
+#~ msgid "Error: discarding"
+#~ msgstr "Error: discarding"
+
+#~ msgid "Error: discarding lookahead"
+#~ msgstr "Error: discarding lookahead"
+
+#~ msgid "Error: popping"
+#~ msgstr "Error: popping"
+
+#~ msgid "Importing took %.3f seconds for %s\n"
+#~ msgstr "Importing took %.3f seconds for %s\n"
+
+#~ msgid "Includes nested too deeply"
+#~ msgstr "Includes nested too deeply"
+
+#~ msgid "Incompatible virtual function %s\n"
+#~ msgstr "不兼容虚函数%s\n"
+
+#~ msgid "Member with same name already exists %s in class %s\n"
+#~ msgstr "Member with same name already exists %s in class %s\n"
+
+#~ msgid "Member with same name already exists %s in member %s\n"
+#~ msgstr "Member with same name already exists %s in member %s\n"
+
+#~ msgid "Multiple field index requires a name\n"
+#~ msgstr "Multiple field index requires a name\n"
+
+#~ msgid "Next token is"
+#~ msgstr "Next token is"
+
+#~ msgid ""
+#~ "No database table defined in this module or database_open already used.\n"
+#~ msgstr ""
+#~ "No database table defined in this module or database_open already used.\n"
+
+#~ msgid "Non-static %s making use of a static class\n"
+#~ msgstr "非静态%s 使用静态类\n"
+
+#~ msgid "Not a type: %s\n"
+#~ msgstr "Not a type: %s\n"
+
+#~ msgid "Now at end of input.\n"
+#~ msgstr "Now at end of input.\n"
+
+#~ msgid "Property %s not found in class %s\n"
+#~ msgstr "属性%s在类%s中未能找到\n"
+
+#~ msgid "Public %s making use of a private class\n"
+#~ msgstr "公共的%s使用私有类\n"
+
+#~ msgid "Reading a token: "
+#~ msgstr "Reading a token: "
+
+#~ msgid "Recursion in defined expression %s\n"
+#~ msgstr "Recursion in defined expression %s\n"
+
+#~ msgid "Redefinition of %s (defining as %s, already defined as %s)\n"
+#~ msgstr "重复定义%s (定义%s, 已经存在定义%s)\n"
+
+#~ msgid "Redefinition of %s ignored\n"
+#~ msgstr "Redefinition of %s ignored\n"
+
+#~ msgid "Redefinition of method %s in class %s\n"
+#~ msgstr "Redefinition of method %s in class %s\n"
+
+#~ msgid "Reducing stack by rule %d (line %u), "
+#~ msgstr "Reducing stack by rule %d (line %u), "
+
+#~ msgid "Shifting"
+#~ msgstr "Shifting"
+
+#~ msgid "Stack now"
+#~ msgstr "Stack now"
+
+#~ msgid "Stack size increased to %lu\n"
+#~ msgstr "Stack size increased to %lu\n"
+
+#~ msgid "Starting parse\n"
+#~ msgstr "Starting parse\n"
+
+#~ msgid ""
+#~ "Syntax:\n"
+#~ " ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-"
+#~ "symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-"
+#~ "D<definition>]* -c <input>\n"
+#~ msgstr ""
+#~ "Syntax:\n"
+#~ " ecc [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-"
+#~ "symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-"
+#~ "D<definition>]* -c <input>\n"
+
+#~ msgid ""
+#~ "Syntax:\n"
+#~ " ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-"
+#~ "symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-"
+#~ "D<definition>]* -c <input>\n"
+#~ msgstr ""
+#~ "Syntax:\n"
+#~ " ecp [-t <target platform>] [-cpp <c preprocessor>] [-o <output>] [-"
+#~ "symbols <outputdir>] [-I<includedir>]* [-isystem <sysincludedir>]* [-"
+#~ "D<definition>]* -c <input>\n"
+
+#~ msgid "[Base]"
+#~ msgstr "[Base]"
+
+#~ msgid "[Bit]"
+#~ msgstr "[Bit]"
+
+#~ msgid "[Conversion]"
+#~ msgstr "[Conversion]"
+
+#~ msgid "[Data member]"
+#~ msgstr "[Data member]"
+
+#~ msgid "[Defined Class Properties]"
+#~ msgstr "[Defined Class Properties]"
+
+#~ msgid "[Defined Classes]"
+#~ msgstr "[Defined Classes]"
+
+#~ msgid "[Defined Classes]\n"
+#~ msgstr "[Defined Classes]\n"
+
+#~ msgid "[Defined Data Members]"
+#~ msgstr "[Defined Data Members]"
+
+#~ msgid "[Defined Data]"
+#~ msgstr "[Defined Data]"
+
+#~ msgid "[Defined Data]\n"
+#~ msgstr "[Defined Data]\n"
+
+#~ msgid "[Defined Expressions]"
+#~ msgstr "[Defined Expressions]"
+
+#~ msgid "[Defined Expressions]\n"
+#~ msgstr "[Defined Expressions]\n"
+
+#~ msgid "[Defined Functions]"
+#~ msgstr "[Defined Functions]"
+
+#~ msgid "[Defined Functions]\n"
+#~ msgstr "[Defined Functions]\n"
+
+#~ msgid "[Defined Methods]"
+#~ msgstr "[Defined Methods]"
+
+#~ msgid "[Defined Properties]"
+#~ msgstr "[Defined Properties]"
+
+#~ msgid "[Enum Values]"
+#~ msgstr "[Enum Values]"
+
+#~ msgid "[Enum]"
+#~ msgstr "[Enum]"
+
+#~ msgid "[Expression]"
+#~ msgstr "[Expression]"
+
+#~ msgid "[Fixed]"
+#~ msgstr "[Fixed]"
+
+#~ msgid "[Get]"
+#~ msgstr "[Get]"
+
+#~ msgid "[Global Instance]"
+#~ msgstr "[Global Instance]"
+
+#~ msgid "[Global Instance]\n"
+#~ msgstr "[Global Instance]\n"
+
+#~ msgid "[Identifier]"
+#~ msgstr "[Identifier]"
+
+#~ msgid "[Imported Classes]"
+#~ msgstr "[Imported Classes]"
+
+#~ msgid "[Imported Functions]"
+#~ msgstr "[Imported Functions]"
+
+#~ msgid "[Imported Methods]"
+#~ msgstr "[Imported Methods]"
+
+#~ msgid "[Imported Modules]"
+#~ msgstr "[Imported Modules]"
+
+#~ msgid "[Imported Modules]\n"
+#~ msgstr "[Imported Modules]\n"
+
+#~ msgid "[Imported Properties]"
+#~ msgstr "[Imported Properties]"
+
+#~ msgid "[Instantiated]"
+#~ msgstr "[Instantiated]"
+
+#~ msgid "[Method]"
+#~ msgstr "[Method]"
+
+#~ msgid "[No Expansion]"
+#~ msgstr "[No Expansion]"
+
+#~ msgid "[NoHead]"
+#~ msgstr "[NoHead]"
+
+#~ msgid "[None]"
+#~ msgstr "[None]"
+
+#~ msgid "[Pos]"
+#~ msgstr "[Pos]"
+
+#~ msgid "[Private Base]"
+#~ msgstr "[Private Base]"
+
+#~ msgid "[Private]"
+#~ msgstr "[Private]"
+
+#~ msgid "[Property]"
+#~ msgstr "[Property]"
+
+#~ msgid "[Public]"
+#~ msgstr "[Public]"
+
+#~ msgid "[Remote]"
+#~ msgstr "[Remote]"
+
+#~ msgid "[Set]"
+#~ msgstr "[Set]"
+
+#~ msgid "[Size]"
+#~ msgstr "[Size]"
+
+#~ msgid "[Static]"
+#~ msgstr "[Static]"
+
+#~ msgid "[Struct]"
+#~ msgstr "[Struct]"
+
+#~ msgid "[Template Parameters]"
+#~ msgstr "[Template Parameters]"
+
+#~ msgid "[This]"
+#~ msgstr "[This]"
+
+#~ msgid "[Type]"
+#~ msgstr "[Type]"
+
+#~ msgid "[Union]"
+#~ msgstr "[Union]"
+
+#~ msgid "[Unit]"
+#~ msgstr "[Unit]"
+
+#~ msgid "[Value]"
+#~ msgstr "[Value]"
+
+#~ msgid "[Virtual]"
+#~ msgstr "[Virtual]"
+
+#~ msgid "[Watchable]"
+#~ msgstr "[Watchable]"
+
+#~ msgid "bad buffer in yy_scan_bytes()"
+#~ msgstr "bad buffer in yy_scan_bytes()"
+
+#~ msgid "callable object undefined; extern assuming returning int\n"
+#~ msgstr "可调用对象未定义,外部假设返回整数\n"
+
+#~ msgid "called object %s is not a function\n"
+#~ msgstr "调用对象%s不是一个函数\n"
+
+#~ msgid "cannot add two pointers\n"
+#~ msgstr "cannot add two pointers\n"
+
+#~ msgid "cannot dereference type\n"
+#~ msgstr "cannot dereference type\n"
+
+#~ msgid "class data member"
+#~ msgstr "类数据成员"
+
+#~ msgid "class member instance"
+#~ msgstr "类成员实例"
+
+#~ msgid "couldn't determine type of %s; expected %s\n"
+#~ msgstr "无法确定%s的类型; 期望%s\n"
+
+#~ msgid "couldn't determine type of %s\n"
+#~ msgstr "无法确定%s的类型\n"
+
+#~ msgid "couldn't find member %s in class %s\n"
+#~ msgstr "不能找到成员%s在类%s中\n"
+
+#~ msgid "couldn't find virtual method %s in class %s\n"
+#~ msgstr "不能找到虚方法%s在类%s中\n"
+
+#~ msgid "different levels of indirection\n"
+#~ msgstr "different levels of indirection\n"
+
+#~ msgid "error: unhandled type populating instance\n"
+#~ msgstr "error: unhandled type populating instance\n"
+
+#~ msgid "fatal error - scanner input buffer overflow"
+#~ msgstr "fatal error - scanner input buffer overflow"
+
+#~ msgid "fatal flex scanner internal error--end of buffer missed"
+#~ msgstr "fatal flex scanner internal error--end of buffer missed"
+
+#~ msgid "fatal flex scanner internal error--no action found"
+#~ msgstr "fatal flex scanner internal error--no action found"
+
+#~ msgid "flex scanner push-back overflow"
+#~ msgstr "flex scanner push-back overflow"
+
+#~ msgid "incompatible expression %s (%s); expected %s\n"
+#~ msgstr "incompatible expression %s (%s); expected %s\n"
+
+#~ msgid "incompatible expressions %s (%s) and %s (%s)\n"
+#~ msgstr "不兼容的表达示%s (%s) 和%s (%s)\n"
+
+#~ msgid "incompatible instance method %s\n"
+#~ msgstr "不兼容的实例方法%s\n"
+
+#~ msgid "incompatible parameter %s (expected %s)\n"
+#~ msgstr "不兼容参数%s (期望%s)\n"
+
+#~ msgid "incompatible return type for function\n"
+#~ msgstr "函数返回类型不兼容\n"
+
+#~ msgid ""
+#~ "input buffer overflow, can't enlarge buffer because scanner uses REJECT"
+#~ msgstr ""
+#~ "input buffer overflow, can't enlarge buffer because scanner uses REJECT"
+
+#~ msgid "input in flex scanner failed"
+#~ msgstr "input in flex scanner failed"
+
+#~ msgid "invalid class specifier %s for object of class %s\n"
+#~ msgstr "无效的类说明%s关于对象类%s\n"
+
+#~ msgid "member operator on non-structure type expression %s\n"
+#~ msgstr "成员操作符对非结构类型表达式%s\n"
+
+#~ msgid "method class must be derived from %s\n"
+#~ msgstr "method class must be derived from %s\n"
+
+#~ msgid "method class should not take an object\n"
+#~ msgstr "method class should not take an object\n"
+
+#~ msgid "not enough arguments for function %s (%d given, expected %d)\n"
+#~ msgstr "参数不够,函数%s (规定%d个, 期望%d个)\n"
+
+#~ msgid "not enough arguments for method %s::%s (%d given, expected %d)\n"
+#~ msgstr "参数不够,方法%s::%s(规定%d个, 期望%d个)\n"
+
+#~ msgid "not enough parameters\n"
+#~ msgstr "没有足够参数\n"
+
+#~ msgid "nterm %s ("
+#~ msgstr "nterm %s ("
+
+#~ msgid "operating on %s and %s with an untyped result, assuming %s\n"
+#~ msgstr "operating on %s and %s with an untyped result, assuming %s\n"
+
+#~ msgid "operator %s illegal on pointer\n"
+#~ msgstr "operator %s illegal on pointer\n"
+
+#~ msgid "out of dynamic memory in yy_create_buffer()"
+#~ msgstr "out of dynamic memory in yy_create_buffer()"
+
+#~ msgid "out of dynamic memory in yy_scan_buffer()"
+#~ msgstr "out of dynamic memory in yy_scan_buffer()"
+
+#~ msgid "out of dynamic memory in yy_scan_bytes()"
+#~ msgstr "out of dynamic memory in yy_scan_bytes()"
+
+#~ msgid "out of memory expanding start-condition stack"
+#~ msgstr "out of memory expanding start-condition stack"
+
+#~ msgid "overriding class expected to be derived from method class\n"
+#~ msgstr "overriding class expected to be derived from method class\n"
+
+#~ msgid "parser stack overflow"
+#~ msgstr "parser stack overflow"
+
+#~ msgid "redefinition of class %s\n"
+#~ msgstr "redefinition of class %s\n"
+
+#~ msgid "redefinition of constructor for class %s\n"
+#~ msgstr "重复定义构造类%s\n"
+
+#~ msgid "redefinition of destructor for class %s\n"
+#~ msgstr "重复定义析构类%s\n"
+
+#~ msgid "start-condition stack underflow"
+#~ msgstr "start-condition stack underflow"
+
+#~ msgid "syntax error"
+#~ msgstr "syntax error"
+
+#~ msgid "syntax error, unexpected "
+#~ msgstr "syntax error, unexpected "
+
+#~ msgid "syntax error: cannot back up"
+#~ msgstr "syntax error: cannot back up"
+
+#~ msgid "syntax error; also virtual memory exhausted"
+#~ msgstr "syntax error; also virtual memory exhausted"
+
+#~ msgid "syntax error\n"
+#~ msgstr "syntax error\n"
+
+#~ msgid "token %s ("
+#~ msgstr "token %s ("
+
+#~ msgid "too many arguments for function %s (%d given, expected %d)\n"
+#~ msgstr "参数太多,函数%s (规定%d个, 期望%d个)\n"
+
+#~ msgid "too many arguments for method %s::%s (%d given, expected %d)\n"
+#~ msgstr "参数太多,方法%s::%s(规定%d个, 期望%d个)\n"
+
+#~ msgid "too many initializers for instantiation of class %s\n"
+#~ msgstr "too many initializers for instantiation of class %s\n"
+
+#~ msgid "too many parameters\n"
+#~ msgstr "太多参数\n"
+
+#~ msgid "undefined class %s\n"
+#~ msgstr "未定义类%s\n"
+
+#~ msgid "unresolved identifier %s::%s\n"
+#~ msgstr "不确定的标识符%s::%s\n"
+
+#~ msgid "unresolved identifier %s; expected %s\n"
+#~ msgstr "不确定的标识符%s; 期望%s\n"
+
+#~ msgid "unresolved identifier %s\n"
+#~ msgstr "不确定的标识符%s\n"
+
+#~ msgid "unresolved symbol used as an instance method %s\n"
+#~ msgstr "unresolved symbol used as an instance method %s\n"
src/shortcuts.ec \
src/type.ec
-RESOURCES =
+RESOURCES = \
+ locale/zh_CN/LC_MESSAGES/ec.mo
# TOOLCHAIN
$(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
$(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME)
$(STRIP) $(STRIPOPT) $(TARGET)
+ $(EAR) awq $(TARGET) locale/zh_CN/LC_MESSAGES/ec.mo "locale/zh_CN/LC_MESSAGES"
$(call cpq,$(TARGET),../../$(SODESTDIR))
ifdef LINUX
ln -sf $(LP)$(MODULE)$(SO).0.44 ../../$(SODESTDIR)$(LP)$(MODULE)$(SO).0
],
"ResourcesPath" : "",
"Resources" : [
-
+ {
+ "Folder" : "locale",
+ "Files" : [
+ {
+ "Folder" : "zh_CN",
+ "Files" : [
+ {
+ "Folder" : "LC_MESSAGES",
+ "Files" : [
+ "ec.mo"
+ ]
+ }
+ ]
+ }
+ ]
+ }
]
}
\ No newline at end of file
--- /dev/null
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: ecere\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: \n"
+"PO-Revision-Date: 2012-02-19 20:10+0900\n"
+"Last-Translator: Jerome St-Louis <jerome@ecere.com>\n"
+"Language-Team: ec <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Basepath: ..\\..\\..\\\n"
+
+#: .\src\pass15.ec:3240
+#: .\src\pass15.ec:3266
+#, fuzzy
+msgid "%s expected to be derived from method class\n"
+msgstr "%s expected to be derived from method class\n"
+
+#: .\src\pass15.ec:8804
+msgid "%s undefined; assuming extern returning int\n"
+msgstr "%s不确定,假设外部返回整数\n"
+
+#: .\src\ecdefs.ec:1223
+#, fuzzy
+msgid ":%d:%d: error: "
+msgstr ":%d:%d: error: "
+
+#: .\src\pass15.ec:804
+msgid "Array size not constant int (%s)\n"
+msgstr "数组大小不是常整型(%s)\n"
+
+#: .\src\pass15.ec:10320
+msgid "Assigning list initializer to non list\n"
+msgstr "列表分配给非列表\n"
+
+#: .\src\pass15.ec:9986
+#: .\src\pass15.ec:11031
+msgid "Couldn't determine type of array elements\n"
+msgstr "无法确定数组元素的类型\n"
+
+#: .\src\pass0.ec:570
+msgid "Couldn't find member %s to override\n"
+msgstr "不能找到成员%s去继承\n"
+
+#: .\src\loadSymbols.ec:716
+#, fuzzy
+msgid "Couldn't open %s\n"
+msgstr "Couldn't open %s\n"
+
+#: .\src\ast.ec:1436
+#, fuzzy
+msgid "Expecting class specifier\n"
+msgstr "Expecting class specifier\n"
+
+#: .\src\pass15.ec:11189
+#, fuzzy
+msgid "Expression is not a container\n"
+msgstr "Expression is not a container\n"
+
+#: .\src\lexer.ec:478
+#, fuzzy
+msgid "Includes nested too deeply"
+msgstr "Includes nested too deeply"
+
+#: .\src\pass1.ec:141
+msgid "Incompatible virtual function %s\n"
+msgstr "不兼容虚函数%s\n"
+
+#: .\src\pass15.ec:11463
+#: .\src\pass15.ec:11538
+msgid "Invalid object specified and not inside a class\n"
+msgstr "无效的类说明%s关于对象类%s\n"
+
+#: .\src\pass15.ec:11371
+#, fuzzy
+msgid "Invalid watched object\n"
+msgstr "Invalid watched object\n"
+
+#: .\src\firstPass.ec:79
+#: .\src\firstPass.ec:104
+#: .\src\firstPass.ec:165
+#: .\src\firstPass.ec:207
+#, fuzzy
+msgid "Member with same name already exists %s in class %s\n"
+msgstr "Member with same name already exists %s in class %s\n"
+
+#: .\src\firstPass.ec:97
+#: .\src\firstPass.ec:158
+#: .\src\firstPass.ec:200
+#, fuzzy
+msgid "Member with same name already exists %s in member %s\n"
+msgstr "Member with same name already exists %s in member %s\n"
+
+#: .\src\dbpass.ec:1073
+#, fuzzy
+msgid "Multiple field index requires a name\n"
+msgstr "Multiple field index requires a name\n"
+
+#: .\src\dbpass.ec:299
+#, fuzzy
+msgid "No database table defined in this module or database_open already used.\n"
+msgstr "No database table defined in this module or database_open already used.\n"
+
+#: .\src\pass15.ec:11384
+#, fuzzy
+msgid "No observer specified and not inside a _class\n"
+msgstr "No observer specified and not inside a _class\n"
+
+#: .\src\pass15.ec:11541
+#, fuzzy
+msgid "No observer specified and not inside a class\n"
+msgstr "No observer specified and not inside a class\n"
+
+#: .\src\pass16.ec:1905
+#: .\src\pass16.ec:1976
+#, fuzzy
+msgid "No set defined for property %s\n"
+msgstr "No set defined for property %s\n"
+
+#: .\src\pass0.ec:153
+msgid "Non-static %s making use of a static class\n"
+msgstr "非静态%s 使用静态类\n"
+
+#: .\src\pass1.ec:1035
+#: .\src\pass15.ec:11366
+#: .\src\pass15.ec:11438
+#: .\src\pass15.ec:11527
+msgid "Property %s not found in class %s\n"
+msgstr "属性%s在类%s中未能找到\n"
+
+#: .\src\pass0.ec:160
+msgid "Public %s making use of a private class\n"
+msgstr "公共的%s使用私有类\n"
+
+#: .\src\pass15.ec:7256
+#, fuzzy
+msgid "Recursion in defined expression %s\n"
+msgstr "Recursion in defined expression %s\n"
+
+#: .\src\loadSymbols.ec:1000
+msgid "Redefinition of %s (defining as %s, already defined as %s)\n"
+msgstr "重复定义%s (定义%s, 已经存在定义%s)\n"
+
+#: .\src\ast.ec:681
+#, fuzzy
+msgid "Redefinition of %s ignored\n"
+msgstr "Redefinition of %s ignored\n"
+
+#: .\src\firstPass.ec:440
+#, fuzzy
+msgid "Redefinition of method %s in class %s\n"
+msgstr "Redefinition of method %s in class %s\n"
+
+#: .\src\pass15.ec:4382
+#: .\src\pass15.ec:4483
+#, fuzzy
+msgid "Unhandled type populating instance\n"
+msgstr "Unhandled type populating instance\n"
+
+#: .\src\pass15.ec:6992
+#, fuzzy
+msgid "Unspecified type\n"
+msgstr "Unspecified type\n"
+
+#: .\src\pass15.ec:8819
+msgid "callable object undefined; extern assuming returning int\n"
+msgstr "可调用对象未定义,外部假设返回整数\n"
+
+#: .\src\pass15.ec:8629
+msgid "called object %s is not a function\n"
+msgstr "调用对象%s不是一个函数\n"
+
+#: .\src\pass15.ec:7718
+#: .\src\pass15.ec:7724
+#: .\src\pass15.ec:7888
+#, fuzzy
+msgid "cannot add two pointers\n"
+msgstr "cannot add two pointers\n"
+
+#: .\src\pass15.ec:1567
+#, fuzzy
+msgid "cannot dereference type\n"
+msgstr "cannot dereference type\n"
+
+#: .\src\pass2.ec:2214
+#, fuzzy
+msgid "cannot obtain address of property\n"
+msgstr "cannot add two pointers\n"
+
+#: .\src\pass15.ec:10061
+msgid "couldn't determine type of %s; expected %s\n"
+msgstr "无法确定%s的类型; 期望%s\n"
+
+#: .\src\pass15.ec:8265
+#: .\src\pass15.ec:8277
+#: .\src\pass15.ec:10073
+#: .\src\pass15.ec:10147
+msgid "couldn't determine type of %s\n"
+msgstr "无法确定%s的类型\n"
+
+#: .\src\pass15.ec:1939
+#: .\src\pass15.ec:9284
+msgid "couldn't find member %s in class %s\n"
+msgstr "不能找到成员%s在类%s中\n"
+
+#: .\src\pass15.ec:1935
+#: .\src\pass15.ec:2044
+msgid "couldn't find virtual method %s in class %s\n"
+msgstr "不能找到虚方法%s在类%s中\n"
+
+#: .\src\pass15.ec:7880
+#, fuzzy
+msgid "different levels of indirection\n"
+msgstr "different levels of indirection\n"
+
+#: .\src\pass15.ec:7736
+#: .\src\pass15.ec:10102
+#, fuzzy
+msgid "incompatible expression %s (%s); expected %s\n"
+msgstr "incompatible expression %s (%s); expected %s\n"
+
+#: .\src\pass15.ec:7997
+#: .\src\pass15.ec:8157
+msgid "incompatible expressions %s (%s) and %s (%s)\n"
+msgstr "不兼容的表达示%s (%s) 和%s (%s)\n"
+
+#: .\src\pass15.ec:1891
+msgid "incompatible instance method %s\n"
+msgstr "不兼容的实例方法%s\n"
+
+#: .\src\pass15.ec:3339
+msgid "incompatible parameter %s (expected %s)\n"
+msgstr "不兼容参数%s (期望%s)\n"
+
+#: .\src\pass15.ec:3279
+msgid "incompatible return type for function\n"
+msgstr "函数返回类型不兼容\n"
+
+#: .\src\pass15.ec:9098
+msgid "invalid class specifier %s for object of class %s\n"
+msgstr "无效的类说明%s关于对象类%s\n"
+
+#: .\src\pass15.ec:9568
+msgid "member operator on non-structure type expression %s\n"
+msgstr "成员操作符对非结构类型表达式%s\n"
+
+#: .\src\pass15.ec:3214
+#: .\src\pass15.ec:3229
+#: .\src\pass15.ec:3255
+#, fuzzy
+msgid "method class must be derived from %s\n"
+msgstr "method class must be derived from %s\n"
+
+#: .\src\pass15.ec:3216
+#, fuzzy
+msgid "method class should not take an object\n"
+msgstr "method class should not take an object\n"
+
+#: .\src\pass2.ec:2216
+#: .\src\pass2.ec:2218
+#, fuzzy
+msgid "no get defined for property %s of class %s\n"
+msgstr "Redefinition of method %s in class %s\n"
+
+#: .\src\pass2.ec:877
+msgid "no set defined for property %s of class %s\n"
+msgstr "无效的类说明%s关于对象类%s\n"
+
+#: .\src\pass15.ec:8778
+msgid "not enough arguments for function %s (%d given, expected %d)\n"
+msgstr "参数不够,函数%s (规定%d个, 期望%d个)\n"
+
+#: .\src\pass15.ec:8774
+msgid "not enough arguments for method %s::%s (%d given, expected %d)\n"
+msgstr "参数不够,方法%s::%s(规定%d个, 期望%d个)\n"
+
+#: .\src\pass15.ec:3290
+msgid "not enough parameters\n"
+msgstr "没有足够参数\n"
+
+#: .\src\pass15.ec:7823
+#, fuzzy
+msgid "operating on %s and %s with an untyped result, assuming %s\n"
+msgstr "operating on %s and %s with an untyped result, assuming %s\n"
+
+#: .\src\pass15.ec:7648
+#, fuzzy
+msgid "operator %s illegal on pointer\n"
+msgstr "operator %s illegal on pointer\n"
+
+#: .\src\pass15.ec:3242
+#, fuzzy
+msgid "overriding class expected to be derived from method class\n"
+msgstr "overriding class expected to be derived from method class\n"
+
+#: .\src\shortcuts.ec:218
+#: .\src\shortcuts.ec:224
+#, fuzzy
+msgid "parsing type %s\n"
+msgstr "Not a type: %s\n"
+
+#: .\src\firstPass.ec:306
+#, fuzzy
+msgid "redefinition of class %s\n"
+msgstr "redefinition of class %s\n"
+
+#: .\src\pass0.ec:720
+msgid "redefinition of constructor for class %s\n"
+msgstr "重复定义构造类%s\n"
+
+#: .\src\pass0.ec:697
+msgid "redefinition of destructor for class %s\n"
+msgstr "重复定义析构类%s\n"
+
+#: .\src\ecdefs.ec:1282
+#: .\src\grammar.ec:3082
+#: .\src\grammar.ec:3083
+#: .\src\grammar.ec:3084
+#: .\src\grammar.ec:3085
+#: .\src\grammar.ec:3086
+#: .\src\grammar.ec:3087
+#: .\src\grammar.ec:3088
+#, fuzzy
+msgid "syntax error\n"
+msgstr "syntax error\n"
+
+#: .\src\pass15.ec:8697
+msgid "too many arguments for function %s (%d given, expected %d)\n"
+msgstr "参数太多,函数%s (规定%d个, 期望%d个)\n"
+
+#: .\src\pass15.ec:8693
+msgid "too many arguments for method %s::%s (%d given, expected %d)\n"
+msgstr "参数太多,方法%s::%s(规定%d个, 期望%d个)\n"
+
+#: .\src\pass15.ec:1945
+#, fuzzy
+msgid "too many initializers for instantiation of class %s\n"
+msgstr "too many initializers for instantiation of class %s\n"
+
+#: .\src\pass15.ec:3353
+msgid "too many parameters\n"
+msgstr "太多参数\n"
+
+#: .\src\pass15.ec:9551
+msgid "undefined class %s\n"
+msgstr "未定义类%s\n"
+
+#: .\src\pass15.ec:10138
+msgid "unresolved identifier %s::%s\n"
+msgstr "不确定的标识符%s::%s\n"
+
+#: .\src\pass15.ec:10059
+msgid "unresolved identifier %s; expected %s\n"
+msgstr "不确定的标识符%s; 期望%s\n"
+
+#: .\src\pass15.ec:10071
+#: .\src\pass15.ec:10140
+msgid "unresolved identifier %s\n"
+msgstr "不确定的标识符%s\n"
+
+#: .\src\pass15.ec:1885
+#, fuzzy
+msgid "unresolved symbol used as an instance method %s\n"
+msgstr "unresolved symbol used as an instance method %s\n"
+
+#: .\src\pass15.ec:7709
+#: .\src\pass15.ec:7866
+#: .\src\pass15.ec:7873
+#, fuzzy
+msgid "void *: unknown size\n"
+msgstr "void *: unknown size\n"
+
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
extern void Compiler_Error(char * format, ...);
+extern __declspec(dllexport) char * __ecereNameSpace__ecere__GetTranslatedString(struct __ecereNameSpace__ecere__com__Instance * module, char * string, char * stringAndContext);
+
+extern struct __ecereNameSpace__ecere__com__Instance * __thisModule;
+
extern struct AsmField * MkAsmField(char * command, struct Expression * expression);
extern struct Statement * MkAsmStmt(struct Specifier * spec, char * statements, struct __ecereNameSpace__ecere__sys__OldList * inputFields, struct __ecereNameSpace__ecere__sys__OldList * outputFields, struct __ecereNameSpace__ecere__sys__OldList * clobberedFields);
case 1037:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1038:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1039:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1040:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1041:
{
yyval.stmt = yyvsp[(1) - (1)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1042:
{
yyval.stmt = yyvsp[(1) - (2)].stmt;
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
;
}
break;
case 1043:
{
yyval.stmt = MkExpressionStmt(yyvsp[(1) - (1)].list);
-Compiler_Error("syntax error\n");
+Compiler_Error(__ecereNameSpace__ecere__GetTranslatedString(__thisModule, "syntax error\n", (((void *)0))));
yyval.stmt->loc = (yylsp[(1) - (1)]);
;
}
struct Symbol * symbol;
unsigned int conversion;
unsigned int isWatchable;
-char * category;
+struct Expression * category;
};
extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyWatch;
if(!eSystem_FindDefine(privateModule, id.string))
eSystem_RegisterDefine(id.string, expString, privateModule, buildingECERECOMModule ? baseSystemAccess : publicAccess);
else
- Compiler_Warning("Redefinition of %s ignored\n", id.string);
+ Compiler_Warning($"Redefinition of %s ignored\n", id.string);
return decl;
}
if(!spec)
{
- Compiler_Error("Expecting class specifier\n");
+ Compiler_Error($"Expecting class specifier\n");
inst._class = MkSpecifierName /*MkClassName*/("");
//exit(1);
//return null;
else
{
FreeExpContents(exp);
- Compiler_Error("No database table defined in this module or database_open already used.\n");
+ Compiler_Error($"No database table defined in this module or database_open already used.\n");
exp.type = dummyExp;
}
break;
needTable = true;
}
else
- Compiler_Error("Multiple field index requires a name\n");
+ Compiler_Error($"Multiple field index requires a name\n");
}
else
{
#endif
//printf("(%d, %d) : error: ", yylloc.start.line, yylloc.start.charPos);
- printf(":%d:%d: error: ", yylloc.start.line, yylloc.start.charPos);
+ printf($":%d:%d: error: ", yylloc.start.line, yylloc.start.charPos);
//printf(":%d: error: ", yylloc.start.line);
va_start(args, format);
vsprintf(string,format,args);
printf(string);
//printf("(%d, %d) : warning: ", yylloc.start.line, yylloc.start.charPos);
- printf(":%d:%d: warning: ", yylloc.start.line, yylloc.start.charPos);
+ printf($":%d:%d: warning: ", yylloc.start.line, yylloc.start.charPos);
//printf(":%d: warning: ", yylloc.start.line);
va_start(args, format);
vsprintf(string,format,args);
//fflush(stdout);
//printf("\n%*s\n%*s\n", column, "^", column, s);
parseError = true;
- Compiler_Error("syntax error\n");
+ Compiler_Error($"syntax error\n");
}
return 0;
}
goto yysetstate;
#else
Location tmpLoc = yylloc; $$ = $2; yylloc = @1;
- Compiler_Error("Not a type: %s\n", $1.string);
+ Compiler_Error($"Not a type: %s\n", $1.string);
yylloc = tmpLoc; $2.badID = $1; // FreeIdentifier($1);
#endif
}*/
dataMember.dataType = dataType;
else
{
- Compiler_Error("Member with same name already exists %s in class %s\n", declId.string, regClass.name);
+ Compiler_Error($"Member with same name already exists %s in class %s\n", declId.string, regClass.name);
FreeType(dataType);
}
}
dataMember = eMember_AddDataMember(member, declId.string,
typeString, 0, 0 /*ComputeTypeSize(dataType)*/, def.memberAccess);
if(!dataMember)
- Compiler_Error("Member with same name already exists %s in member %s\n", declId.string, member.name);
+ Compiler_Error($"Member with same name already exists %s in member %s\n", declId.string, member.name);
}
else
{
dataMember = eClass_AddDataMember(regClass, declId.string,
typeString, 0, 0 /*ComputeTypeSize(dataType)*/, def.memberAccess);
if(!dataMember)
- Compiler_Error("Member with same name already exists %s in class %s\n", declId.string, regClass.name);
+ Compiler_Error($"Member with same name already exists %s in class %s\n", declId.string, regClass.name);
}
//delete dataTypeString;
dataMember = eMember_AddDataMember(member, id.string,
typeString, 0, 0 /*ComputeTypeSize(dataType)*/, def.memberAccess);
if(!dataMember)
- Compiler_Error("Member with same name already exists %s in member %s\n", id.string, member.name);
+ Compiler_Error($"Member with same name already exists %s in member %s\n", id.string, member.name);
}
else
{
dataMember = eClass_AddDataMember(regClass, id.string,
typeString, 0, 0 /*ComputeTypeSize(dataType)*/, def.memberAccess);
if(!dataMember)
- Compiler_Error("Member with same name already exists %s in class %s\n", id.string, regClass.name);
+ Compiler_Error($"Member with same name already exists %s in class %s\n", id.string, regClass.name);
}
{
dataMember = eMember_AddDataMember(member, string, inst._class.name, 0, 0 /*ComputeTypeSize(dataType)*/, def.memberAccess);
if(!dataMember)
- Compiler_Error("Member with same name already exists %s in member %s\n", string, member.name);
+ Compiler_Error($"Member with same name already exists %s in member %s\n", string, member.name);
}
else
{
dataMember = eClass_AddDataMember(regClass, string, inst._class.name, 0, 0 /*ComputeTypeSize(dataType)*/, def.memberAccess);
if(!dataMember)
- Compiler_Error("Member with same name already exists %s in class %s\n", string, regClass.name);
+ Compiler_Error($"Member with same name already exists %s in class %s\n", string, regClass.name);
}
if(dataMember)
dataMember.dataType = dataType;
if(inCompiler)
{
yylloc = loc;
- Compiler_Error("redefinition of class %s\n", symbol.string /*_class._class.name*/);
+ Compiler_Error($"redefinition of class %s\n", symbol.string /*_class._class.name*/);
return;
}
}
method = eClass_AddMethod(regClass, id.string, typeString,
inCompiler ? func.declarator.symbol : null, def.memberAccess);
if(!method)
- Compiler_Error("Redefinition of method %s in class %s\n", id.string, regClass.name);
+ Compiler_Error($"Redefinition of method %s in class %s\n", id.string, regClass.name);
delete typeString;
}
if(method && (method.type != virtualMethod || method._class == regClass))
goto yysetstate;
#else
Location tmpLoc = yylloc; (yyval.specifier) = (yyvsp[(2) - (2)].id); yylloc = (yylsp[(1) - (2)]);
- Compiler_Error("Not a type: %s\n", (yyvsp[(1) - (2)].id).string);
+ Compiler_Error($"Not a type: %s\n", (yyvsp[(1) - (2)].id).string);
yylloc = tmpLoc; (yyvsp[(2) - (2)].id).badID = (yyvsp[(1) - (2)].id);
#endif
;}
/* Line 1464 of yacc.c */
#line 3082 "grammar.y"
- { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error("syntax error\n"); ;}
+ { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error($"syntax error\n"); ;}
break;
case 1038:
/* Line 1464 of yacc.c */
#line 3083 "grammar.y"
- { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error("syntax error\n"); ;}
+ { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error($"syntax error\n"); ;}
break;
case 1039:
/* Line 1464 of yacc.c */
#line 3084 "grammar.y"
- { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error("syntax error\n"); ;}
+ { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error($"syntax error\n"); ;}
break;
case 1040:
/* Line 1464 of yacc.c */
#line 3085 "grammar.y"
- { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error("syntax error\n"); ;}
+ { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error($"syntax error\n"); ;}
break;
case 1041:
/* Line 1464 of yacc.c */
#line 3086 "grammar.y"
- { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error("syntax error\n"); ;}
+ { (yyval.stmt) = (yyvsp[(1) - (1)].stmt); Compiler_Error($"syntax error\n"); ;}
break;
case 1042:
/* Line 1464 of yacc.c */
#line 3087 "grammar.y"
- { (yyval.stmt) = (yyvsp[(1) - (2)].stmt); Compiler_Error("syntax error\n"); ;}
+ { (yyval.stmt) = (yyvsp[(1) - (2)].stmt); Compiler_Error($"syntax error\n"); ;}
break;
case 1043:
/* Line 1464 of yacc.c */
#line 3088 "grammar.y"
- { (yyval.stmt) = MkExpressionStmt((yyvsp[(1) - (1)].list)); Compiler_Error("syntax error\n"); (yyval.stmt).loc = (yylsp[(1) - (1)]); ;}
+ { (yyval.stmt) = MkExpressionStmt((yyvsp[(1) - (1)].list)); Compiler_Error($"syntax error\n"); (yyval.stmt).loc = (yylsp[(1) - (1)]); ;}
break;
case 1044:
goto yysetstate;
#else
Location tmpLoc = yylloc; $$ = $2; yylloc = @1;
- Compiler_Error("Not a type: %s\n", $1.string);
+ Compiler_Error($"Not a type: %s\n", $1.string);
yylloc = tmpLoc; $2.badID = $1;
#endif
}
goto yysetstate;
#else
Location tmpLoc = yylloc; $$ = $2; yylloc = @1;
- Compiler_Error("Not a type: %s\n", $1.string);
+ Compiler_Error($"Not a type: %s\n", $1.string);
yylloc = tmpLoc; $2.badID = $1;
#endif
}*/
;
statement_error:
- labeled_statement_error { $$ = $1; Compiler_Error("syntax error\n"); }
- | iteration_statement_error { $$ = $1; Compiler_Error("syntax error\n"); }
- | compound_statement_error { $$ = $1; Compiler_Error("syntax error\n"); }
- | selection_statement_error { $$ = $1; Compiler_Error("syntax error\n"); }
- | jump_statement_error { $$ = $1; Compiler_Error("syntax error\n"); }
- | jump_statement error { $$ = $1; Compiler_Error("syntax error\n"); }
- | expression_error { $$ = MkExpressionStmt($1); Compiler_Error("syntax error\n"); $$.loc = @1; }
+ labeled_statement_error { $$ = $1; Compiler_Error($"syntax error\n"); }
+ | iteration_statement_error { $$ = $1; Compiler_Error($"syntax error\n"); }
+ | compound_statement_error { $$ = $1; Compiler_Error($"syntax error\n"); }
+ | selection_statement_error { $$ = $1; Compiler_Error($"syntax error\n"); }
+ | jump_statement_error { $$ = $1; Compiler_Error($"syntax error\n"); }
+ | jump_statement error { $$ = $1; Compiler_Error($"syntax error\n"); }
+ | expression_error { $$ = MkExpressionStmt($1); Compiler_Error($"syntax error\n"); $$.loc = @1; }
;
asm_field:
if ( include_stack_ptr >= MAX_INCLUDE_DEPTH )
{
- fprintf( stderr, "Includes nested too deeply" );
+ fprintf( stderr, $"Includes nested too deeply" );
exit( 1 );
}
if ( include_stack_ptr >= MAX_INCLUDE_DEPTH )
{
- fprintf( stderr, "Includes nested too deeply" );
+ fprintf( stderr, $"Includes nested too deeply" );
exit( 1 );
}
if(member)
{
if(!eMember_AddDataMember(member, name, line[0] ? line : 0, 0, 0 /*size *//*type->size*/, memberAccess))
- ;//Compiler_Error("Member with same name already exists %s in member %s\n", name, member->name);
+ ;//Compiler_Error($"Member with same name already exists %s in member %s\n", name, member->name);
}
else if(regClass && regClass.type == bitClass)
{
else if(regClass)
{
if(!eClass_AddDataMember(regClass, name, line[0] ? line : 0, 0, 0 /*size *//*type->size*/, memberAccess))
- ;//Compiler_Error("Member with same name already exists %s in class %s\n", name, regClass.fullName);
+ ;//Compiler_Error($"Member with same name already exists %s in class %s\n", name, regClass.fullName);
}
}
else if(!strcmp(line, "[Struct]") || !strcmp(line, "[Union]"))
if(member)
{
if(!eMember_AddMember(member, dataMember))
- ;//Compiler_Error("Member with same name already exists %s in member %s\n", name, member->name);
+ ;//Compiler_Error($"Member with same name already exists %s in member %s\n", name, member->name);
}
else if(regClass)
{
if(!eClass_AddMember(regClass, dataMember))
- ;//Compiler_Error("Member with same name already exists %s in class %s\n", name, regClass.name);
+ ;//Compiler_Error($"Member with same name already exists %s in class %s\n", name, regClass.name);
}
}
}
//if(baseSymbol && !baseSymbol->registered)
/*if(classType != unitClass && classType != bitClass && classType != enumClass && baseName && !eSystem_FindClass(privateModule, baseName))
{
- Compiler_Error("Base class %s undefined\n", baseName);
+ Compiler_Error($"Base class %s undefined\n", baseName);
DeclClass(0, name);
regClass = null;
continue;
}
else if(importType != comCheckImport)
{
- Compiler_Error("Couldn't open %s\n", fileName);
+ Compiler_Error($"Couldn't open %s\n", fileName);
}
return globalInstance;
}
PrintType(type1, type1String, false, true);
PrintType(type2, type2String, false, true);
if(strcmp(type1String, type2String))
- Compiler_Warning("Redefinition of %s (defining as %s, already defined as %s)\n", redefinition.name, type1String, type2String);
+ Compiler_Warning($"Redefinition of %s (defining as %s, already defined as %s)\n", redefinition.name, type1String, type2String);
FreeType(type1);
FreeType(type2);
}
// TODO: Will need to add checks for template parameter classes
if(classSym.isStatic && access != staticAccess)
{
- Compiler_Error("Non-static %s making use of a static class\n", word);
+ Compiler_Error($"Non-static %s making use of a static class\n", word);
}
else if(access == publicAccess)
{
if(!NameSpaceContained(regClass.nameSpace, regClass.module.application.systemNameSpace))
{
if(NameSpaceContained(regClass.nameSpace, regClass.module.privateNameSpace) || !ModuleAccess(privateModule, regClass.module))
- Compiler_Error("Public %s making use of a private class\n", word);
+ Compiler_Error($"Public %s making use of a private class\n", word);
}
}
}
else
dataMember = eClass_FindDataMember(regClass, declId.string, privateModule, null, null);
if(dataMember)
- CheckPublicDataType(dataMember.dataType, (def.memberAccess == privateAccess) ? privateAccess : access, "class data member");
+ CheckPublicDataType(dataMember.dataType, (def.memberAccess == privateAccess) ? privateAccess : access, $"class data member");
}
}
}
else
dataMember = eClass_FindDataMember(regClass, spec.id.string, privateModule, null, null);
if(dataMember)
- CheckPublicDataType(dataMember.dataType, (def.memberAccess == privateAccess) ? privateAccess : access, "class data member");
+ CheckPublicDataType(dataMember.dataType, (def.memberAccess == privateAccess) ? privateAccess : access, $"class data member");
}
}
}
}
else if(decl.type == instDeclaration)
{
- CheckPublicClass(decl.inst._class.symbol /*FindClass(decl.inst._class.name)*/, (def.memberAccess == privateAccess) ? privateAccess : access, "class member instance");
+ CheckPublicClass(decl.inst._class.symbol /*FindClass(decl.inst._class.name)*/, (def.memberAccess == privateAccess) ? privateAccess : access, $"class member instance");
}
}
}
{
if(!regClass.base.symbol)
regClass.base.symbol = FindClass(regClass.base.fullName);
- CheckPublicClass(regClass.base.symbol, publicAccess, "class");
+ CheckPublicClass(regClass.base.symbol, publicAccess, $"class");
}
else if(!symbol.isStatic && regClass.base)
{
if(!regClass.base.symbol)
regClass.base.symbol = FindClass(regClass.base.fullName);
- CheckPublicClass(regClass.base.symbol, privateAccess, "class");
+ CheckPublicClass(regClass.base.symbol, privateAccess, $"class");
}
}
{
if(regClass.inheritanceAccess == publicAccess &&
(regClass.base.nameSpace == ®Class.base.module.privateNameSpace || !ModuleAccess(privateModule, regClass.base.module)))
- Compiler_Error("Public class publicly inheriting off private base class\n");
+ Compiler_Error($"Public class publicly inheriting off private base class\n");
}
else if(!symbol.isStatic)
{
Symbol baseSym = FindClass(regClass.base.fullName);
if(baseSym && baseSym.isStatic)
- Compiler_Error("Non-static class inheriting off static base class\n");
+ Compiler_Error($"Non-static class inheriting off static base class\n");
}
*/
else
{
yylloc = def.loc;
- Compiler_Error("Couldn't find member %s to override\n", def.id.string);
+ Compiler_Error($"Couldn't find member %s to override\n", def.id.string);
}
}
}
if(destructor)
{
yylloc = loc;
- Compiler_Error("redefinition of destructor for class %s\n", symbol.string);
+ Compiler_Error($"redefinition of destructor for class %s\n", symbol.string);
}
else
{
if(constructor)
{
yylloc = loc;
- Compiler_Error("redefinition of constructor for class %s\n", symbol.string);
+ Compiler_Error($"redefinition of constructor for class %s\n", symbol.string);
}
else
{
#ifdef _DEBUG
// MatchTypes(type, methodDataType, null, owningClass, owningClass, true, true, true, false);
#endif
- Compiler_Error("Incompatible virtual function %s\n", method.name);
+ Compiler_Error($"Incompatible virtual function %s\n", method.name);
}
else
{
ListAdd(stmt.expressions, MkExpCall(MkExpIdentifier(MkIdentifier("eProperty_SelfWatch")), args));
}
else
- Compiler_Error("Property %s not found in class %s\n", propID.string, regClass.fullName);
+ Compiler_Error($"Property %s not found in class %s\n", propID.string, regClass.fullName);
}
FreePropertyWatch(def.propertyWatch);
def.propertyWatch = (PropertyWatch)stmt; // Store this here to use it after CreateRegisterModuleBody is done
yylloc = type.arraySizeExp.loc;
if(inCompiler)
PrintExpression(type.arraySizeExp, expression);
- Compiler_Error("Array size not constant int (%s)\n", expression);
+ Compiler_Error($"Array size not constant int (%s)\n", expression);
yylloc = oldLoc;
}
GetInt(type.arraySizeExp, &type.arraySize);
source.refCount++;
}
else
- Compiler_Error("cannot dereference type\n");
+ Compiler_Error($"cannot dereference type\n");
}
return type;
}
expString[0] = '\0';
PrintExpression(member.initializer.exp, expString);
ChangeCh(expString, '\n', ' ');
- Compiler_Error("unresolved symbol used as an instance method %s\n", expString);
+ Compiler_Error($"unresolved symbol used as an instance method %s\n", expString);
}
}
//else if(!MatchTypes(member.exp.expType, type, null, _class, null, true, true, false, false))
else if(!MatchTypes(member.initializer.exp.expType, type, null, null, _class, true, true, false, false))
{
- Compiler_Error("incompatible instance method %s\n", ident.string);
+ Compiler_Error($"incompatible instance method %s\n", ident.string);
}
}
else if(member.initializer)
{
if(method)
{
- Compiler_Error("couldn't find virtual method %s in class %s\n", ident.string, _class.fullName);
+ Compiler_Error($"couldn't find virtual method %s in class %s\n", ident.string, _class.fullName);
}
else if(_class)
{
- Compiler_Error("couldn't find member %s in class %s\n", ident.string, _class.fullName);
+ Compiler_Error($"couldn't find member %s in class %s\n", ident.string, _class.fullName);
if(inCompiler)
eClass_AddDataMember(_class, ident.string, "int", 0, 0, publicAccess);
}
}
else if(_class)
- Compiler_Error("too many initializers for instantiation of class %s\n", _class.fullName);
+ Compiler_Error($"too many initializers for instantiation of class %s\n", _class.fullName);
}
}
}
}
else if(classSym)
{
- Compiler_Error("couldn't find virtual method %s in class %s\n",
+ Compiler_Error($"couldn't find virtual method %s in class %s\n",
unmangled, classSym.string);
}
}
!eClass_IsDerived(source.thisClass ? source.thisClass.registered : owningClassSource,paramDest._class.registered))))
{
if(paramDest && paramDest.kind == classType)
- Compiler_Error("method class must be derived from %s\n", paramDest._class.string);
+ Compiler_Error($"method class must be derived from %s\n", paramDest._class.string);
else
- Compiler_Error("method class should not take an object\n");
+ Compiler_Error($"method class should not take an object\n");
return false;
}
paramDest = paramDest.next;
{
if(!paramSource || paramSource.kind != classType || !eClass_IsDerived(paramSource._class.registered,dest.thisClass.registered))
{
- Compiler_Error("method class must be derived from %s\n", dest.thisClass.string);
+ Compiler_Error($"method class must be derived from %s\n", dest.thisClass.string);
return false;
}
}
if(!paramSource || paramSource.kind != classType || (owningClassDest && !eClass_IsDerived(paramSource._class.registered, owningClassDest)))
{
if(owningClassDest)
- Compiler_Error("%s expected to be derived from method class\n", owningClassDest.fullName);
+ Compiler_Error($"%s expected to be derived from method class\n", owningClassDest.fullName);
else
- Compiler_Error("overriding class expected to be derived from method class\n");
+ Compiler_Error($"overriding class expected to be derived from method class\n");
return false;
}
}
// Source thisClass must be derived from destination thisClass
if(!eClass_IsDerived(source.thisClass ? source.thisClass.registered : owningClassSource, dest.thisClass.registered))
{
- Compiler_Error("method class must be derived from %s\n", dest.thisClass.string);
+ Compiler_Error($"method class must be derived from %s\n", dest.thisClass.string);
return false;
}
}
if(source.thisClass && source.thisClass.registered && owningClassDest && !eClass_IsDerived(source.thisClass.registered, owningClassDest))
{
//if(owningClass)
- Compiler_Error("%s expected to be derived from method class\n", /*owningClass.name*/ source.thisClass.registered.fullName);
+ Compiler_Error($"%s expected to be derived from method class\n", /*owningClass.name*/ source.thisClass.registered.fullName);
//else
- //Compiler_Error("overriding class expected to be derived from method class\n");
+ //Compiler_Error($"overriding class expected to be derived from method class\n");
return false;
}
}
// Source return type must be derived from destination return type
if(!MatchTypes(source.returnType, dest.returnType, null, null, null, true, true, false, false))
{
- Compiler_Warning("incompatible return type for function\n");
+ Compiler_Warning($"incompatible return type for function\n");
return false;
}
{
if(!paramSource)
{
- //Compiler_Warning("not enough parameters\n");
- Compiler_Error("not enough parameters\n");
+ //Compiler_Warning($"not enough parameters\n");
+ Compiler_Error($"not enough parameters\n");
return false;
}
{
char type[1024];
type[0] = 0;
PrintType(paramDest, type, false, true);
- Compiler_Warning("incompatible parameter %s (expected %s)\n", paramSource.name, type);
+ Compiler_Warning($"incompatible parameter %s (expected %s)\n", paramSource.name, type);
if(paramDestType != paramDest)
FreeType(paramDestType);
}
if(paramSource)
{
- Compiler_Error("too many parameters\n");
+ Compiler_Error($"too many parameters\n");
return false;
}
return true;
break;
}
default:
- printf("error: unhandled type populating instance\n");
+ Compiler_Error($"Unhandled type populating instance\n");
}
}
ListAdd(memberList, member);
break;
}
default:
- printf("error: unhandled type populating instance\n");
+ Compiler_Error($"Unhandled type populating instance\n");
}
}
ListAdd(memberList, member);
{
if(destType.kind == ellipsisType)
{
- Compiler_Error("Unspecified type\n");
+ Compiler_Error($"Unspecified type\n");
}
else if(!(destType.truth && e.expType.kind == classType && e.expType._class && e.expType._class.registered && e.expType._class.registered.type == structClass))
{
{
if(inCompiler)
{
- Compiler_Error("Recursion in defined expression %s\n", id.string);
+ Compiler_Error($"Recursion in defined expression %s\n", id.string);
}
}
}
{
if(exp.op.op == MUL_ASSIGN || exp.op.op == DIV_ASSIGN ||exp.op.op == MOD_ASSIGN ||exp.op.op == LEFT_ASSIGN ||exp.op.op == RIGHT_ASSIGN ||
exp.op.op == AND_ASSIGN || exp.op.op == OR_ASSIGN)
- Compiler_Error("operator %s illegal on pointer\n", exp.op.op);
+ Compiler_Error($"operator %s illegal on pointer\n", exp.op.op);
else if(exp.op.op == '=')
{
if(exp.op.exp2.destType) FreeType(exp.op.exp2.destType);
if(exp.op.exp2.expType.kind == int64Type || exp.op.exp2.expType.kind == intType || exp.op.exp2.expType.kind == shortType || exp.op.exp2.expType.kind == charType)
{
if(exp.op.op != '=' && type1.type.kind == voidType)
- Compiler_Error("void *: unknown size\n");
+ Compiler_Error($"void *: unknown size\n");
}
else if(exp.op.exp2.expType.kind == pointerType || exp.op.exp2.expType.kind == arrayType || exp.op.exp2.expType.kind == functionType || exp.op.exp2.expType.kind == methodType||
(type1.type.kind == voidType && exp.op.exp2.expType.kind == classType && exp.op.exp2.expType._class.registered &&
exp.op.exp2.expType._class.registered.type == noHeadClass)))
{
if(exp.op.op == ADD_ASSIGN)
- Compiler_Error("cannot add two pointers\n");
+ Compiler_Error($"cannot add two pointers\n");
}
else if((exp.op.exp2.expType.kind == classType && type1.kind == pointerType && type1.type.kind == classType &&
type1.type._class == exp.op.exp2.expType._class && exp.op.exp2.expType._class.registered && exp.op.exp2.expType._class.registered.type == structClass))
{
if(exp.op.op == ADD_ASSIGN)
- Compiler_Error("cannot add two pointers\n");
+ Compiler_Error($"cannot add two pointers\n");
}
else if(inCompiler)
{
PrintType(exp.op.exp2.expType, type1String, false, true);
PrintType(type1, type2String, false, true);
ChangeCh(expString, '\n', ' ');
- Compiler_Warning("incompatible expression %s (%s); expected %s\n", expString, type1String, type2String);
+ Compiler_Warning($"incompatible expression %s (%s); expected %s\n", expString, type1String, type2String);
}
}
type1._class.registered && type1._class.registered.type == unitClass &&
type2._class.registered && type2._class.registered.type == unitClass &&
type1._class.registered != type2._class.registered)
- Compiler_Warning("operating on %s and %s with an untyped result, assuming %s\n",
+ Compiler_Warning($"operating on %s and %s with an untyped result, assuming %s\n",
type1._class.string, type2._class.string, type1._class.string);
if(type1.kind == pointerType && type1.type.kind == templateType && type2.kind != pointerType)
if(!boolResult && ((type1.kind == pointerType || type1.kind == arrayType || (type1.kind == classType && !strcmp(type1._class.string, "String"))) && (type2.kind == int64Type || type2.kind == intType || type2.kind == shortType || type2.kind == charType)))
{
if(type1.kind != classType && type1.type.kind == voidType)
- Compiler_Error("void *: unknown size\n");
+ Compiler_Error($"void *: unknown size\n");
exp.expType = type1;
if(type1) type1.refCount++;
}
else if(!boolResult && ((type2.kind == pointerType || type2.kind == arrayType || (type2.kind == classType && !strcmp(type2._class.string, "String"))) && (type1.kind == int64Type || type1.kind == intType || type1.kind == shortType || type1.kind == charType)))
{
if(type2.kind != classType && type2.type.kind == voidType)
- Compiler_Error("void *: unknown size\n");
+ Compiler_Error($"void *: unknown size\n");
exp.expType = type2;
if(type2) type2.refCount++;
}
else if((type1.kind == pointerType && type2.kind != pointerType && type2.kind != arrayType && type2.kind != functionType && type2.kind != methodType && type2.kind != classType && type2.kind != subClassType) ||
(type2.kind == pointerType && type1.kind != pointerType && type1.kind != arrayType && type1.kind != functionType && type1.kind != methodType && type1.kind != classType && type1.kind != subClassType))
{
- Compiler_Warning("different levels of indirection\n");
+ Compiler_Warning($"different levels of indirection\n");
}
else
{
if(type1.kind == pointerType && type2.kind == pointerType)
{
if(exp.op.op == '+')
- Compiler_Error("cannot add two pointers\n");
+ Compiler_Error($"cannot add two pointers\n");
else if(exp.op.op == '-')
{
// Pointer Subtraction gives integer
PrintType(exp.op.exp2.expType, type2, false, true);
}
- Compiler_Warning("incompatible expressions %s (%s) and %s (%s)\n", expString1, type1, expString2, type2);
+ Compiler_Warning($"incompatible expressions %s (%s) and %s (%s)\n", expString1, type1, expString2, type2);
}
}
}
PrintType(exp.op.exp2.expType, type2String, false, true);
}
- Compiler_Warning("incompatible expressions %s (%s) and %s (%s)\n", expString1, type1String, expString2, type2String);
+ Compiler_Warning($"incompatible expressions %s (%s) and %s (%s)\n", expString1, type1String, expString2, type2String);
if(type1.kind == classType && type1._class && type1._class.registered && type1._class.registered.type == enumClass)
{
ChangeCh(expString, '\n', ' ');
}
if(expString[0])
- Compiler_Error("couldn't determine type of %s\n", expString);
+ Compiler_Error($"couldn't determine type of %s\n", expString);
}
if(exp.op.exp2 && !exp.op.exp2.expType)
{
ChangeCh(expString, '\n', ' ');
}
if(expString[0])
- Compiler_Error("couldn't determine type of %s\n", expString);
+ Compiler_Error($"couldn't determine type of %s\n", expString);
}
if(boolResult)
}
if(functionType && functionType.kind != TypeKind::functionType)
{
- Compiler_Error("called object %s is not a function\n", name);
+ Compiler_Error($"called object %s is not a function\n", name);
}
else if(functionType)
{
{
yylloc = e.loc;
if(methodType && methodType.methodClass)
- Compiler_Error("too many arguments for method %s::%s (%d given, expected %d)\n",
+ Compiler_Error($"too many arguments for method %s::%s (%d given, expected %d)\n",
methodType.methodClass.fullName, methodType.method.name, exp.call.arguments->count,
noParams ? 0 : functionType.params.count);
else
- Compiler_Error("too many arguments for function %s (%d given, expected %d)\n",
+ Compiler_Error($"too many arguments for function %s (%d given, expected %d)\n",
name /*exp.call.exp.identifier.string*/, exp.call.arguments->count,
noParams ? 0 : functionType.params.count);
break;
if(type && type.kind != ellipsisType)
{
if(methodType && methodType.methodClass)
- Compiler_Warning("not enough arguments for method %s::%s (%d given, expected %d)\n",
+ Compiler_Warning($"not enough arguments for method %s::%s (%d given, expected %d)\n",
methodType.methodClass.fullName, methodType.method.name, exp.call.arguments ? exp.call.arguments->count : 0,
functionType.params.count + extra);
else
- Compiler_Warning("not enough arguments for function %s (%d given, expected %d)\n",
+ Compiler_Warning($"not enough arguments for function %s (%d given, expected %d)\n",
name /*exp.call.exp.identifier.string*/, exp.call.arguments ? exp.call.arguments->count : 0,
functionType.params.count + extra);
}
yylloc = exp.call.exp.identifier.loc;
if(strstr(string, "__builtin_") == string);
else
- Compiler_Warning("%s undefined; assuming extern returning int\n", string);
+ Compiler_Warning($"%s undefined; assuming extern returning int\n", string);
symbol = Symbol { string = CopyString(string), type = ProcessTypeString("int()", true) };
globalContext.symbols.Add((BTNode)symbol);
if(strstr(symbol.string, "::"))
}
else if(exp.call.exp.type == memberExp)
{
- /*Compiler_Warning("%s undefined; assuming returning int\n",
+ /*Compiler_Warning($"%s undefined; assuming returning int\n",
exp.call.exp.member.member.string);*/
}
else
- Compiler_Warning("callable object undefined; extern assuming returning int\n");
+ Compiler_Warning($"callable object undefined; extern assuming returning int\n");
if(!functionType.returnType)
{
exp.member.memberType = propertyMember;
if(id && id._class && type._class && !eClass_IsDerived(type._class.registered, _class))
- Compiler_Error("invalid class specifier %s for object of class %s\n", _class.fullName, type._class.string);
+ Compiler_Error($"invalid class specifier %s for object of class %s\n", _class.fullName, type._class.string);
if(typeKind != subClassType)
{
return;
}
yylloc = exp.member.member.loc;
- Compiler_Error("couldn't find member %s in class %s\n", id.string, _class.fullName);
+ Compiler_Error($"couldn't find member %s in class %s\n", id.string, _class.fullName);
if(inCompiler)
eClass_AddDataMember(_class, id.string, "int", 0, 0, publicAccess);
}
}
}
else
- Compiler_Error("undefined class %s\n", (id && (!id._class || id._class.name))? (id.classSym ? id.classSym.string : (type._class ? type._class.string : null)) : "(null)");
+ Compiler_Error($"undefined class %s\n", (id && (!id._class || id._class.name))? (id.classSym ? id.classSym.string : (type._class ? type._class.string : null)) : "(null)");
}
else if(type && (type.kind == structType || type.kind == unionType))
{
char expString[10240];
expString[0] = '\0';
if(inCompiler) { PrintExpression(exp, expString); ChangeCh(expString, '\n', ' '); }
- Compiler_Error("member operator on non-structure type expression %s\n", expString);
+ Compiler_Error($"member operator on non-structure type expression %s\n", expString);
}
if(exp.expType && exp.expType.kind == thisClassType && (!exp.destType || exp.destType.kind != thisClassType))
else
{
exp.expType = ProcessTypeString("Container", false);
- Compiler_Error("Couldn't determine type of array elements\n");
+ Compiler_Error($"Couldn't determine type of array elements\n");
}
break;
}
if(inCompiler) { PrintExpression(exp, expString); ChangeCh(expString, '\n', ' '); }
if(unresolved)
- Compiler_Error("unresolved identifier %s; expected %s\n", expString, type2);
+ Compiler_Error($"unresolved identifier %s; expected %s\n", expString, type2);
else if(exp.type != dummyExp)
- Compiler_Error("couldn't determine type of %s; expected %s\n", expString, type2);
+ Compiler_Error($"couldn't determine type of %s; expected %s\n", expString, type2);
}
}
else
if(inCompiler) { PrintExpression(exp, expString); ChangeCh(expString, '\n', ' '); }
if(unresolved)
- Compiler_Error("unresolved identifier %s\n", expString);
+ Compiler_Error($"unresolved identifier %s\n", expString);
else if(exp.type != dummyExp)
- Compiler_Error("couldn't determine type of %s\n", expString);
+ Compiler_Error($"couldn't determine type of %s\n", expString);
}
}
else
#ifdef _DEBUG
CheckExpressionType(exp, exp.destType, false);
#endif
- Compiler_Warning("incompatible expression %s (%s); expected %s\n", expString, type1, type2);
+ Compiler_Warning($"incompatible expression %s (%s); expected %s\n", expString, type1, type2);
// TO CHECK: FORCING HERE TO HELP DEBUGGER
FreeType(exp.expType);
else if(unresolved)
{
if(exp.identifier._class && exp.identifier._class.name)
- Compiler_Error("unresolved identifier %s::%s\n", exp.identifier._class.name, exp.identifier.string);
+ Compiler_Error($"unresolved identifier %s::%s\n", exp.identifier._class.name, exp.identifier.string);
else if(exp.identifier.string && exp.identifier.string[0])
- Compiler_Error("unresolved identifier %s\n", exp.identifier.string);
+ Compiler_Error($"unresolved identifier %s\n", exp.identifier.string);
}
else if(!exp.expType && exp.type != dummyExp)
{
char expString[10240];
expString[0] = '\0';
if(inCompiler) { PrintExpression(exp, expString); ChangeCh(expString, '\n', ' '); }
- Compiler_Error("couldn't determine type of %s\n", expString);
+ Compiler_Error($"couldn't determine type of %s\n", expString);
}
// Let's try to support any_object & typed_object here:
if(type && type.kind != arrayType && type.kind != structType && type.kind != unionType && (type.kind != classType || !type._class.registered || type._class.registered.type != structClass))
{
- Compiler_Error("Assigning list initializer to non list\n");
+ Compiler_Error($"Assigning list initializer to non list\n");
}
break;
}
else
{
arrayExp.expType = ProcessTypeString("Container", false);
- Compiler_Error("Couldn't determine type of array elements\n");
+ Compiler_Error($"Couldn't determine type of array elements\n");
}
/*
}
else
{
- Compiler_Error("Expression is not a container\n");
+ Compiler_Error($"Expression is not a container\n");
}
break;
}
ListAdd(stmt.expressions, MkExpCall(MkExpIdentifier(MkIdentifier("ecere::com::eInstance_Watch")), args));
}
else
- Compiler_Error("Property %s not found in class %s\n", prop.name, _class.fullName);
+ Compiler_Error($"Property %s not found in class %s\n", prop.name, _class.fullName);
}
}
}
else
- Compiler_Error("Invalid watched object\n");
+ Compiler_Error($"Invalid watched object\n");
}
curExternal = external;
FreeList(watches, FreePropertyWatch);
}
else
- Compiler_Error("No observer specified and not inside a _class\n");
+ Compiler_Error($"No observer specified and not inside a _class\n");
}
else
{
}
else if(!watches)
{
- //Compiler_Error("No property specified and not inside a property set\n");
+ //Compiler_Error($"No property specified and not inside a property set\n");
}
if(watches)
{
CreateFireWatcher(prop, object, stmt);
}
else
- Compiler_Error("Property %s not found in class %s\n", propID.string, _class.fullName);
+ Compiler_Error($"Property %s not found in class %s\n", propID.string, _class.fullName);
}
}
else
FreeList(watches, FreeIdentifier);
}
else
- Compiler_Error("Invalid object specified and not inside a class\n");
+ Compiler_Error($"Invalid object specified and not inside a class\n");
}
break;
}
ListAdd(stmt.expressions, MkExpCall(MkExpIdentifier(MkIdentifier("ecere::com::eInstance_StopWatching")), args));
}
else
- Compiler_Error("Property %s not found in class %s\n", prop.name, _class.fullName);
+ Compiler_Error($"Property %s not found in class %s\n", prop.name, _class.fullName);
}
}
FreeList(watches, FreeIdentifier);
}
else
- Compiler_Error("Invalid object specified and not inside a class\n");
+ Compiler_Error($"Invalid object specified and not inside a class\n");
}
else
- Compiler_Error("No observer specified and not inside a class\n");
+ Compiler_Error($"No observer specified and not inside a class\n");
}
break;
}
{
if(!((Property)dataMember).Set)
{
- Compiler_Error("No set defined for property %s\n", dataMember.name);
+ Compiler_Error($"No set defined for property %s\n", dataMember.name);
continue;
}
recursionCount--;
{
if(!((Property)dataMember).Set)
{
- Compiler_Error("No set defined for property %s\n", dataMember.name);
+ Compiler_Error($"No set defined for property %s\n", dataMember.name);
continue;
}
recursionCount--;
memberExp.member.memberType = dataMember;
}
else
- Compiler_Error("no set defined for property %s of class %s\n", prop.name, prop._class.fullName);
+ Compiler_Error($"no set defined for property %s of class %s\n", prop.name, prop._class.fullName);
}
}
else
else
{
if(exp.usage.usageRef)
- Compiler_Error("cannot obtain address of property\n");
+ Compiler_Error($"cannot obtain address of property\n");
else if(!prop.Get)
- Compiler_Error("no get defined for property %s of class %s\n", prop.name, prop._class.fullName);
+ Compiler_Error($"no get defined for property %s of class %s\n", prop.name, prop._class.fullName);
else if(exp.usage.usageDelete)
- Compiler_Error("no get defined for property %s of class %s\n", prop.name, prop._class.fullName);
+ Compiler_Error($"no get defined for property %s of class %s\n", prop.name, prop._class.fullName);
}
}
}
if(parseTypeError)
{
- Compiler_Warning("parsing type %s\n", string);
- // Compiler_Error("parsing type %s\n", string);
+ Compiler_Warning($"parsing type %s\n", string);
+ // Compiler_Error($"parsing type %s\n", string);
}
}
else
{
- Compiler_Warning("parsing type %s\n", string);
- // Compiler_Error("parsing type %s\n", string);
+ Compiler_Warning($"parsing type %s\n", string);
+ // Compiler_Error($"parsing type %s\n", string);
//eSystem_Logf("parsing type %s\n", string);
//exit(0);
decl = baseDecl;
goto yysetstate;
#else
Location tmpLoc = yylloc; (yyval.specifier) = (yyvsp[(2) - (2)].id); yylloc = (yylsp[(1) - (2)]);
- Compiler_Error("Not a type: %s\n", (yyvsp[(1) - (2)].id).string);
+ Compiler_Error($"Not a type: %s\n", (yyvsp[(1) - (2)].id).string);
yylloc = tmpLoc; (yyvsp[(2) - (2)].id).badID = (yyvsp[(1) - (2)].id); // FreeIdentifier($1);
#endif
;}
goto yysetstate;
#else
Location tmpLoc = yylloc; $$ = $2; yylloc = @1;
- Compiler_Error("Not a type: %s\n", $1.string);
+ Compiler_Error($"Not a type: %s\n", $1.string);
yylloc = tmpLoc; $2.badID = $1; // FreeIdentifier($1);
#endif
}
OBJECTS = \
$(OBJ)Mutex.o \
+ $(OBJ)i18n.o \
$(OBJ)Array.o \
$(OBJ)AVLTree.o \
$(OBJ)BuiltInContainer.o \
COBJECTS = \
$(OBJ)Mutex.c \
+ $(OBJ)i18n.c \
$(OBJ)Array.c \
$(OBJ)AVLTree.c \
$(OBJ)BuiltInContainer.c \
SYMBOLS = \
$(OBJ)Mutex.sym \
+ $(OBJ)i18n.sym \
$(OBJ)Array.sym \
$(OBJ)AVLTree.sym \
$(OBJ)BuiltInContainer.sym \
IMPORTS = \
$(OBJ)Mutex.imp \
+ $(OBJ)i18n.imp \
$(OBJ)Array.imp \
$(OBJ)AVLTree.imp \
$(OBJ)BuiltInContainer.imp \
SOURCES = \
src/sys/Mutex.ec \
+ src/sys/i18n.ec \
src/com/containers/Array.ec \
src/com/containers/AVLTree.ec \
src/com/containers/BuiltInContainer.ec \
$(OBJ)Mutex.sym: src/sys/Mutex.ec
$(ECP) $(CECFLAGS) $(ECFLAGS) $(CFLAGS) -c src/sys/Mutex.ec -o $(OBJ)Mutex.sym
+$(OBJ)i18n.sym: src/sys/i18n.ec
+ $(ECP) $(CECFLAGS) $(ECFLAGS) $(CFLAGS) -c src/sys/i18n.ec -o $(OBJ)i18n.sym
+
$(OBJ)Array.sym: src/com/containers/Array.ec
$(ECP) $(CECFLAGS) $(ECFLAGS) $(CFLAGS) -c src/com/containers/Array.ec -o $(OBJ)Array.sym
$(OBJ)Mutex.c: src/sys/Mutex.ec $(OBJ)Mutex.sym | $(SYMBOLS)
$(ECC) $(CECFLAGS) $(ECFLAGS) $(CFLAGS) $(FVISIBILITY) -c src/sys/Mutex.ec -o $(OBJ)Mutex.c -symbols $(OBJ)
+$(OBJ)i18n.c: src/sys/i18n.ec $(OBJ)i18n.sym | $(SYMBOLS)
+ $(ECC) $(CECFLAGS) $(ECFLAGS) $(CFLAGS) $(FVISIBILITY) -c src/sys/i18n.ec -o $(OBJ)i18n.c -symbols $(OBJ)
+
$(OBJ)Array.c: src/com/containers/Array.ec $(OBJ)Array.sym | $(SYMBOLS)
$(ECC) $(CECFLAGS) $(ECFLAGS) $(CFLAGS) $(FVISIBILITY) -c src/com/containers/Array.ec -o $(OBJ)Array.c -symbols $(OBJ)
$(OBJ)Mutex.o: $(OBJ)Mutex.c
$(CC) $(CFLAGS) $(FVISIBILITY) -c $(OBJ)Mutex.c -o $(OBJ)Mutex.o
+$(OBJ)i18n.o: $(OBJ)i18n.c
+ $(CC) $(CFLAGS) $(FVISIBILITY) -c $(OBJ)i18n.c -o $(OBJ)i18n.o
+
$(OBJ)Array.o: $(OBJ)Array.c
$(CC) $(CFLAGS) $(FVISIBILITY) -c $(OBJ)Array.c -o $(OBJ)Array.o
{
"Folder" : "sys",
"Files" : [
- "Mutex.ec"
+ "Mutex.ec",
+ "i18n.ec"
]
},
{
import "OldList"
import "String"
import "dataTypes"
+import "i18n"
#if defined(ECERE_BOOTSTRAP) || defined(ECERE_STATIC)
#define dllexport
if(!_class.internalDecl)
{
if(declMode != baseSystemAccess)
- printf("error: Redefinition of class %s\n", name);
+ printf($"error: Redefinition of class %s\n", name);
else
{
_class.comRedefinition = true;
+#ifndef ECERE_COM_MODULE
import "File"
+#endif
import "Map"
#if defined(ECERE_BOOTSTRAP) || defined(ECERE_STATIC)
public dllexport void LoadTranslatedStrings(Module module, char * name)
{
+#ifndef ECERE_COM_MODULE
File f;
char fileName[MAX_LOCATION];
}
delete f;
}
+#endif
}
public dllexport void UnloadTranslatedStrings(Module module)
sqlite3.c \
EDASQLite.ec
-RESOURCES =
+RESOURCES = \
+ locale/zh_CN/LC_MESSAGES/EDASQLite.mo
# TOOLCHAIN
$(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
$(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME) $(SONAME)
$(STRIP) $(STRIPOPT) $(TARGET)
+ $(EAR) awq $(TARGET) locale/zh_CN/LC_MESSAGES/EDASQLite.mo "locale/zh_CN/LC_MESSAGES"
$(call cpq,$(TARGET),../../../$(SODESTDIR))
ifdef LINUX
ln -sf $(LP)$(MODULE)$(SO).0.44 ../../../$(SODESTDIR)$(LP)$(MODULE)$(SO).0
EDASQLiteCipher.ec \
../sqlite/EDASQLite.ec
-RESOURCES =
+RESOURCES = \
+ locale/zh_CN/LC_MESSAGES/EDASQLiteCipher.mo
# TOOLCHAIN
export LD_LIBRARY_PATH = ../../../obj/$(PLATFORM)/lib/
$(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
$(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME) $(SONAME)
$(STRIP) $(STRIPOPT) $(TARGET)
+ $(EAR) awq $(TARGET) locale/zh_CN/LC_MESSAGES/EDASQLiteCipher.mo "locale/zh_CN/LC_MESSAGES"
$(call cpq,$(TARGET),../../../$(SODESTDIR))
ifdef LINUX
ln -sf $(LP)$(MODULE)$(SO).0.44 ../../../$(SODESTDIR)$(LP)$(MODULE)$(SO).0
src/gui.ec \
src/idList.ec
-RESOURCES =
+RESOURCES = \
+ locale/zh_CN/LC_MESSAGES/eda.mo
# TOOLCHAIN
export LD_LIBRARY_PATH = ../../obj/$(PLATFORM)/lib/
$(TARGET): $(SOURCES) $(RESOURCES) $(SYMBOLS) $(OBJECTS) | objdir
$(CC) $(OFLAGS) $(OBJECTS) $(LIBS) -o $(TARGET) $(INSTALLNAME) $(SONAME)
$(STRIP) $(STRIPOPT) $(TARGET)
+ $(EAR) awq $(TARGET) locale/zh_CN/LC_MESSAGES/eda.mo "locale/zh_CN/LC_MESSAGES"
$(call cpq,$(TARGET),../../$(SODESTDIR))
ifdef LINUX
ln -sf $(LP)$(MODULE)$(SO).0.44 ../../$(SODESTDIR)$(LP)$(MODULE)$(SO).0