X-Git-Url: https://ecere.com/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=compiler%2Fbootstrap%2Fecc%2Fbootstrap%2Fecc.c;h=4b0507a8a0ace9f1b6279746deaa7247dc5a699e;hb=fb1ec2b53d667da845f12a698eeb73ec1b8759e5;hp=08a82b08d588ff5349ecbaf06e28c9d6113fe6ed;hpb=931d05a21c5c68eca963c27ed5ad91a67de65385;p=sdk diff --git a/compiler/bootstrap/ecc/bootstrap/ecc.c b/compiler/bootstrap/ecc/bootstrap/ecc.c index 08a82b0..4b0507a 100644 --- a/compiler/bootstrap/ecc/bootstrap/ecc.c +++ b/compiler/bootstrap/ecc/bootstrap/ecc.c @@ -323,42 +323,6 @@ int __ecereMethod___ecereNameSpace__ecere__sys__DualPipe_GetExitCode(); int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek; -struct __ecereNameSpace__ecere__com__Property; - -struct __ecereNameSpace__ecere__com__Property -{ -struct __ecereNameSpace__ecere__com__Property * prev; -struct __ecereNameSpace__ecere__com__Property * next; -const char * name; -unsigned int isProperty; -int memberAccess; -int id; -struct __ecereNameSpace__ecere__com__Class * _class; -const char * dataTypeString; -struct __ecereNameSpace__ecere__com__Class * dataTypeClass; -struct Type * dataType; -void (* Set)(void * , int); -int (* Get)(void * ); -unsigned int (* IsSet)(void * ); -void * data; -void * symbol; -int vid; -unsigned int conversion; -unsigned int watcherOffset; -const char * category; -unsigned int compiled; -unsigned int selfWatchable; -unsigned int isWatchable; -} ecere_gcc_struct; - -extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property); - -extern void __ecereNameSpace__ecere__com__eInstance_StopWatching(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property, struct __ecereNameSpace__ecere__com__Instance * object); - -extern void __ecereNameSpace__ecere__com__eInstance_Watch(void * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * )); - -extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property); - struct FunctionImport; struct FunctionImport @@ -582,82 +546,67 @@ extern void FreeGlobalData(struct __ecereNameSpace__ecere__com__NameSpace * glob extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com____ecere_COM_Initialize(unsigned int guiApp, int argc, char * argv[]); -struct __ecereNameSpace__ecere__com__Method; +struct __ecereNameSpace__ecere__com__DataMember; -struct __ecereNameSpace__ecere__com__Method +struct __ecereNameSpace__ecere__com__DataMember { +struct __ecereNameSpace__ecere__com__DataMember * prev; +struct __ecereNameSpace__ecere__com__DataMember * next; const char * name; -struct __ecereNameSpace__ecere__com__Method * parent; -struct __ecereNameSpace__ecere__com__Method * left; -struct __ecereNameSpace__ecere__com__Method * right; -int depth; -int (* function)(); -int vid; -int type; +unsigned int isProperty; +int memberAccess; +int id; struct __ecereNameSpace__ecere__com__Class * _class; -void * symbol; const char * dataTypeString; +struct __ecereNameSpace__ecere__com__Class * dataTypeClass; struct Type * dataType; -int memberAccess; +int type; +int offset; +int memberID; +struct __ecereNameSpace__ecere__sys__OldList members; +struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha; +int memberOffset; +short structAlignment; +short pointerAlignment; } ecere_gcc_struct; -extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddMethod(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, const char * type, void * function, int declMode); - -struct __ecereNameSpace__ecere__com__Module; +struct __ecereNameSpace__ecere__com__Property; -struct __ecereNameSpace__ecere__com__Module +struct __ecereNameSpace__ecere__com__Property { -struct __ecereNameSpace__ecere__com__Instance * application; -struct __ecereNameSpace__ecere__sys__OldList classes; -struct __ecereNameSpace__ecere__sys__OldList defines; -struct __ecereNameSpace__ecere__sys__OldList functions; -struct __ecereNameSpace__ecere__sys__OldList modules; -struct __ecereNameSpace__ecere__com__Instance * prev; -struct __ecereNameSpace__ecere__com__Instance * next; +struct __ecereNameSpace__ecere__com__Property * prev; +struct __ecereNameSpace__ecere__com__Property * next; const char * name; -void * library; -void * Unload; -int importType; -int origImportType; -struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace; -struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace; -} ecere_gcc_struct; - -static struct __ecereNameSpace__ecere__com__Instance * privateModule; - -extern void SetPrivateModule(struct __ecereNameSpace__ecere__com__Instance * module); - -struct GlobalData -{ -uintptr_t key; -struct __ecereNameSpace__ecere__sys__BTNode * parent; -struct __ecereNameSpace__ecere__sys__BTNode * left; -struct __ecereNameSpace__ecere__sys__BTNode * right; -int depth; -struct __ecereNameSpace__ecere__com__Instance * module; -char * dataTypeString; +unsigned int isProperty; +int memberAccess; +int id; +struct __ecereNameSpace__ecere__com__Class * _class; +const char * dataTypeString; +struct __ecereNameSpace__ecere__com__Class * dataTypeClass; struct Type * dataType; +void (* Set)(void * , int); +int (* Get)(void * ); +unsigned int (* IsSet)(void * ); +void * data; void * symbol; -char * fullName; -char __ecere_padding[40]; +int vid; +unsigned int conversion; +unsigned int watcherOffset; +const char * category; +unsigned int compiled; +unsigned int selfWatchable; +unsigned int isWatchable; } ecere_gcc_struct; -extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com__eModule_LoadStrict(struct __ecereNameSpace__ecere__com__Instance * fromModule, const char * name, int importAccess); - -extern void ComputeModuleClasses(struct __ecereNameSpace__ecere__com__Instance * module); - -extern void FreeTypeData(struct __ecereNameSpace__ecere__com__Instance * privateModule); +extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property); -extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, const char * name, const char * baseName, int size, int sizeClass, unsigned int (* Constructor)(void * ), void (* Destructor)(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess); +extern void __ecereNameSpace__ecere__com__eInstance_StopWatching(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property, struct __ecereNameSpace__ecere__com__Instance * object); -extern struct __ecereNameSpace__ecere__com__Instance * __thisModule; +extern void __ecereNameSpace__ecere__com__eInstance_Watch(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * )); -void __ecereUnregisterModule_ecc(struct __ecereNameSpace__ecere__com__Instance * module) -{ - -} +extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property); -struct __ecereNameSpace__ecere__com__DataMember; +struct __ecereNameSpace__ecere__com__Method; struct __ecereNameSpace__ecere__com__ClassTemplateArgument { @@ -682,26 +631,43 @@ struct __ecereNameSpace__ecere__com__Method * method; } ecere_gcc_struct __anon1; } ecere_gcc_struct; -struct __ecereNameSpace__ecere__com__DataMember +struct __ecereNameSpace__ecere__com__Method { -struct __ecereNameSpace__ecere__com__DataMember * prev; -struct __ecereNameSpace__ecere__com__DataMember * next; const char * name; -unsigned int isProperty; -int memberAccess; -int id; +struct __ecereNameSpace__ecere__com__Method * parent; +struct __ecereNameSpace__ecere__com__Method * left; +struct __ecereNameSpace__ecere__com__Method * right; +int depth; +int (* function)(); +int vid; +int type; struct __ecereNameSpace__ecere__com__Class * _class; +void * symbol; const char * dataTypeString; -struct __ecereNameSpace__ecere__com__Class * dataTypeClass; struct Type * dataType; -int type; -int offset; -int memberID; -struct __ecereNameSpace__ecere__sys__OldList members; -struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha; -int memberOffset; -short structAlignment; -short pointerAlignment; +int memberAccess; +} ecere_gcc_struct; + +extern struct __ecereNameSpace__ecere__com__Method * __ecereNameSpace__ecere__com__eClass_AddMethod(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, const char * type, void * function, int declMode); + +struct __ecereNameSpace__ecere__com__Module; + +struct __ecereNameSpace__ecere__com__Module +{ +struct __ecereNameSpace__ecere__com__Instance * application; +struct __ecereNameSpace__ecere__sys__OldList classes; +struct __ecereNameSpace__ecere__sys__OldList defines; +struct __ecereNameSpace__ecere__sys__OldList functions; +struct __ecereNameSpace__ecere__sys__OldList modules; +struct __ecereNameSpace__ecere__com__Instance * prev; +struct __ecereNameSpace__ecere__com__Instance * next; +const char * name; +void * library; +void * Unload; +int importType; +int origImportType; +struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace; +struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace; } ecere_gcc_struct; struct __ecereNameSpace__ecere__com__Class @@ -761,8 +727,43 @@ struct __ecereNameSpace__ecere__sys__OldList templatized; int numParams; unsigned int isInstanceClass; unsigned int byValueSystemClass; +void * bindingsClass; } ecere_gcc_struct; +static struct __ecereNameSpace__ecere__com__Instance * privateModule; + +extern void SetPrivateModule(struct __ecereNameSpace__ecere__com__Instance * module); + +struct GlobalData +{ +uintptr_t key; +struct __ecereNameSpace__ecere__sys__BTNode * parent; +struct __ecereNameSpace__ecere__sys__BTNode * left; +struct __ecereNameSpace__ecere__sys__BTNode * right; +int depth; +struct __ecereNameSpace__ecere__com__Instance * module; +char * dataTypeString; +struct Type * dataType; +void * symbol; +char * fullName; +char __ecere_padding[40]; +} ecere_gcc_struct; + +extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com__eModule_LoadStrict(struct __ecereNameSpace__ecere__com__Instance * fromModule, const char * name, int importAccess); + +extern void ComputeModuleClasses(struct __ecereNameSpace__ecere__com__Instance * module); + +extern void FreeTypeData(struct __ecereNameSpace__ecere__com__Instance * privateModule); + +extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_RegisterClass(int type, const char * name, const char * baseName, int size, int sizeClass, unsigned int (* Constructor)(void * ), void (* Destructor)(void * ), struct __ecereNameSpace__ecere__com__Instance * module, int declMode, int inheritanceAccess); + +extern struct __ecereNameSpace__ecere__com__Instance * __thisModule; + +void __ecereUnregisterModule_ecc(struct __ecereNameSpace__ecere__com__Instance * module) +{ + +} + static struct __ecereNameSpace__ecere__com__Class * __ecereClass_CompilerApp; extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;