compiler: Added (u)intsize to map to size_t; Updated C prototypes to use it; Fixed...
[sdk] / compiler / bootstrap / ecc / bootstrap / ecc.main.c
1 #if defined(__GNUC__)
2 typedef long long int64;
3 typedef unsigned long long uint64;
4 #ifndef _WIN32
5 #define __declspec(x)
6 #endif
7 #elif defined(__TINYC__)
8 #include <stdarg.h>
9 #define __builtin_va_list va_list
10 #define __builtin_va_start va_start
11 #define __builtin_va_end va_end
12 #ifdef _WIN32
13 #define strcasecmp stricmp
14 #define strncasecmp strnicmp
15 #define __declspec(x) __attribute__((x))
16 #else
17 #define __declspec(x)
18 #endif
19 typedef long long int64;
20 typedef unsigned long long uint64;
21 #else
22 typedef __int64 int64;
23 typedef unsigned __int64 uint64;
24 #endif
25 #ifdef __BIG_ENDIAN__
26 #define __ENDIAN_PAD(x) (8 - (x))
27 #else
28 #define __ENDIAN_PAD(x) 0
29 #endif
30 #include <stdint.h>
31 #include <sys/types.h>
32
33 #if defined(_W64) || (defined(__WORDSIZE) && __WORDSIZE == 8) || defined(__x86_64__)
34 #define _64BIT 1
35 #else
36 #define _64BIT 0
37 #endif
38
39 #define arch_PointerSize                  sizeof(void *)
40 #define structSize_Instance               (_64BIT ? 24 : 12)
41 #define structSize_Module                 (_64BIT ? 560 : 300)
42
43 extern void *  __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
44
45 extern void *  __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
46
47 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew(void *  memory, unsigned int size);
48
49 extern void *  __ecereNameSpace__ecere__com__eSystem_Renew0(void *  memory, unsigned int size);
50
51 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
52
53 struct __ecereNameSpace__ecere__sys__BTNode;
54
55 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
56
57 struct __ecereNameSpace__ecere__sys__BinaryTree
58 {
59 struct __ecereNameSpace__ecere__sys__BTNode * root;
60 int count;
61 int (*  CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
62 void (*  FreeKey)(void *  key);
63 } __attribute__ ((gcc_struct));
64
65 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
66
67 struct __ecereNameSpace__ecere__sys__OldList
68 {
69 void *  first;
70 void *  last;
71 int count;
72 unsigned int offset;
73 unsigned int circ;
74 } __attribute__ ((gcc_struct));
75
76 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
77
78 struct __ecereNameSpace__ecere__com__Method
79 {
80 char *  name;
81 struct __ecereNameSpace__ecere__com__Method * parent;
82 struct __ecereNameSpace__ecere__com__Method * left;
83 struct __ecereNameSpace__ecere__com__Method * right;
84 int depth;
85 int (*  function)();
86 int vid;
87 int type;
88 struct __ecereNameSpace__ecere__com__Class * _class;
89 void *  symbol;
90 char *  dataTypeString;
91 struct Type * dataType;
92 int memberAccess;
93 } __attribute__ ((gcc_struct));
94
95 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
96
97 struct __ecereNameSpace__ecere__com__Property
98 {
99 struct __ecereNameSpace__ecere__com__Property * prev;
100 struct __ecereNameSpace__ecere__com__Property * next;
101 char *  name;
102 unsigned int isProperty;
103 int memberAccess;
104 int id;
105 struct __ecereNameSpace__ecere__com__Class * _class;
106 char *  dataTypeString;
107 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
108 struct Type * dataType;
109 void (*  Set)(void * , int);
110 int (*  Get)(void * );
111 unsigned int (*  IsSet)(void * );
112 void *  data;
113 void *  symbol;
114 int vid;
115 unsigned int conversion;
116 unsigned int watcherOffset;
117 char *  category;
118 unsigned int compiled;
119 unsigned int selfWatchable;
120 unsigned int isWatchable;
121 } __attribute__ ((gcc_struct));
122
123 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_CodePosition;
124
125 struct CodePosition
126 {
127 int line;
128 int charPos;
129 int pos;
130 unsigned int included;
131 } __attribute__ ((gcc_struct));
132
133 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Location;
134
135 struct Location
136 {
137 struct CodePosition start;
138 struct CodePosition end;
139 } __attribute__ ((gcc_struct));
140
141 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Attrib;
142
143 struct Attrib;
144
145 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ExtDecl;
146
147 struct ExtDecl;
148
149 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDefinition;
150
151 struct ClassDefinition;
152
153 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
154
155 struct Context;
156
157 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
158
159 struct Instantiation;
160
161 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declaration;
162
163 struct Declaration;
164
165 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Statement;
166
167 struct Statement;
168
169 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
170
171 struct TypeName;
172
173 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Initializer;
174
175 struct Initializer;
176
177 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
178
179 struct __ecereNameSpace__ecere__com__DataValue
180 {
181 union
182 {
183 char c;
184 unsigned char uc;
185 short s;
186 unsigned short us;
187 int i;
188 unsigned int ui;
189 void *  p;
190 float f;
191 double d;
192 long long i64;
193 uint64 ui64;
194 } __attribute__ ((gcc_struct));
195 } __attribute__ ((gcc_struct));
196
197 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Expression;
198
199 struct Expression;
200
201 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateDatatype;
202
203 struct TemplateDatatype;
204
205 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateArgument;
206
207 struct TemplateArgument;
208
209 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateParameter;
210
211 struct TemplateParameter;
212
213 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Specifier;
214
215 struct Specifier;
216
217 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Identifier;
218
219 struct Identifier;
220
221 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declarator;
222
223 struct Declarator;
224
225 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionDefinition;
226
227 struct FunctionDefinition;
228
229 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableDef;
230
231 struct DBTableDef;
232
233 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_External;
234
235 struct External;
236
237 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ModuleImport;
238
239 struct ModuleImport;
240
241 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassImport;
242
243 struct ClassImport;
244
245 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;
246
247 struct Symbol;
248
249 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
250
251 struct Type;
252
253 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
254
255 struct __ecereNameSpace__ecere__com__Class
256 {
257 struct __ecereNameSpace__ecere__com__Class * prev;
258 struct __ecereNameSpace__ecere__com__Class * next;
259 char *  name;
260 int offset;
261 int structSize;
262 int (* *  _vTbl)();
263 int vTblSize;
264 int (*  Constructor)(struct __ecereNameSpace__ecere__com__Instance *);
265 void (*  Destructor)(struct __ecereNameSpace__ecere__com__Instance *);
266 int offsetClass;
267 int sizeClass;
268 struct __ecereNameSpace__ecere__com__Class * base;
269 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
270 struct __ecereNameSpace__ecere__sys__BinaryTree members;
271 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
272 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
273 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
274 struct __ecereNameSpace__ecere__sys__OldList derivatives;
275 int memberID;
276 int startMemberID;
277 int type;
278 struct __ecereNameSpace__ecere__com__Instance * module;
279 struct __ecereNameSpace__ecere__com__NameSpace *  nameSpace;
280 char *  dataTypeString;
281 struct Type * dataType;
282 int typeSize;
283 int defaultAlignment;
284 void (*  Initialize)();
285 int memberOffset;
286 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
287 char *  designerClass;
288 unsigned int noExpansion;
289 char *  defaultProperty;
290 unsigned int comRedefinition;
291 int count;
292 unsigned int isRemote;
293 unsigned int internalDecl;
294 void *  data;
295 unsigned int computeSize;
296 int structAlignment;
297 int destructionWatchOffset;
298 unsigned int fixed;
299 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
300 int inheritanceAccess;
301 char *  fullName;
302 void *  symbol;
303 struct __ecereNameSpace__ecere__sys__OldList conversions;
304 struct __ecereNameSpace__ecere__sys__OldList templateParams;
305 struct __ecereNameSpace__ecere__com__ClassTemplateArgument *  templateArgs;
306 struct __ecereNameSpace__ecere__com__Class * templateClass;
307 struct __ecereNameSpace__ecere__sys__OldList templatized;
308 int numParams;
309 } __attribute__ ((gcc_struct));
310
311 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, char *  name);
312
313 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
314
315 struct __ecereNameSpace__ecere__com__Instance
316 {
317 int (* *  _vTbl)();
318 struct __ecereNameSpace__ecere__com__Class * _class;
319 int _refCount;
320 } __attribute__ ((gcc_struct));
321
322 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
323
324 struct __ecereNameSpace__ecere__com__DataMember
325 {
326 struct __ecereNameSpace__ecere__com__DataMember * prev;
327 struct __ecereNameSpace__ecere__com__DataMember * next;
328 char *  name;
329 unsigned int isProperty;
330 int memberAccess;
331 int id;
332 struct __ecereNameSpace__ecere__com__Class * _class;
333 char *  dataTypeString;
334 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
335 struct Type * dataType;
336 int type;
337 int offset;
338 int memberID;
339 struct __ecereNameSpace__ecere__sys__OldList members;
340 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
341 int memberOffset;
342 int structAlignment;
343 } __attribute__ ((gcc_struct));
344
345 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
346
347 struct __ecereNameSpace__ecere__com__SerialBuffer
348 {
349 unsigned char *  _buffer;
350 unsigned int count;
351 unsigned int _size;
352 unsigned int pos;
353 } __attribute__ ((gcc_struct));
354
355 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
356
357 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
358 {
359 union
360 {
361 struct
362 {
363 char *  dataTypeString;
364 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
365 } __attribute__ ((gcc_struct));
366 struct __ecereNameSpace__ecere__com__DataValue expression;
367 struct
368 {
369 char *  memberString;
370 union
371 {
372 struct __ecereNameSpace__ecere__com__DataMember * member;
373 struct __ecereNameSpace__ecere__com__Property * prop;
374 struct __ecereNameSpace__ecere__com__Method * method;
375 } __attribute__ ((gcc_struct));
376 } __attribute__ ((gcc_struct));
377 } __attribute__ ((gcc_struct));
378 } __attribute__ ((gcc_struct));
379
380 static struct __ecereNameSpace__ecere__com__Instance * __currentModule;
381
382 struct __ecereNameSpace__ecere__com__Instance * __thisModule;
383
384 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Application;
385
386 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Instance;
387
388 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
389
390 unsigned int __ecereDll_Load_ec(struct __ecereNameSpace__ecere__com__Instance * module);
391
392 unsigned int __ecereDll_Unload_ec(struct __ecereNameSpace__ecere__com__Instance * module);
393
394 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Attrib;
395
396 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassDefinition;
397
398 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ClassImport;
399
400 struct __ecereNameSpace__ecere__com__Class * __ecereClass_CodePosition;
401
402 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Context;
403
404 struct __ecereNameSpace__ecere__com__Class * __ecereClass_DBTableDef;
405
406 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declaration;
407
408 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Declarator;
409
410 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Definition;
411
412 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Expression;
413
414 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ExtDecl;
415
416 struct __ecereNameSpace__ecere__com__Class * __ecereClass_External;
417
418 struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionDefinition;
419
420 struct __ecereNameSpace__ecere__com__Class * __ecereClass_FunctionImport;
421
422 struct __ecereNameSpace__ecere__com__Class * __ecereClass_GlobalData;
423
424 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Identifier;
425
426 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ImportedModule;
427
428 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Initializer;
429
430 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Instantiation;
431
432 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Location;
433
434 struct __ecereNameSpace__ecere__com__Class * __ecereClass_MethodImport;
435
436 struct __ecereNameSpace__ecere__com__Class * __ecereClass_ModuleImport;
437
438 struct __ecereNameSpace__ecere__com__Class * __ecereClass_PropertyImport;
439
440 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Specifier;
441
442 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Statement;
443
444 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Symbol;
445
446 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateArgument;
447
448 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateDatatype;
449
450 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TemplateParameter;
451
452 struct __ecereNameSpace__ecere__com__Class * __ecereClass_Type;
453
454 struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
455
456 unsigned int __ecereDll_Load_ecere(struct __ecereNameSpace__ecere__com__Instance * module);
457
458 unsigned int __ecereDll_Unload_ecere(struct __ecereNameSpace__ecere__com__Instance * module);
459
460 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Class;
461
462 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument;
463
464 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataMember;
465
466 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__DataValue;
467
468 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Method;
469
470 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
471
472 struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__Platform_char__PTR_;
473
474 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Property;
475
476 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__SerialBuffer;
477
478 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BTNode;
479
480 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__BinaryTree;
481
482 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof;
483
484 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read;
485
486 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
487
488 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Write;
489
490 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__OldList;
491
492 struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__TempFile;
493
494 void __ecereRegisterModule_ecc(struct __ecereNameSpace__ecere__com__Instance * module);
495
496 void __ecereUnregisterModule_ecc(struct __ecereNameSpace__ecere__com__Instance * module);
497
498 void __ecereCreateModuleInstances_ecc();
499
500 void __ecereDestroyModuleInstances_ecc();
501
502 extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com____ecere_COM_Initialize(unsigned int guiApp, int argc, char *  argv[]);
503
504 extern struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com__eModule_LoadStatic(struct __ecereNameSpace__ecere__com__Instance * fromModule, char *  name, int importAccess, unsigned int (* )(struct __ecereNameSpace__ecere__com__Instance * module), unsigned int (* )(struct __ecereNameSpace__ecere__com__Instance * module));
505
506 extern struct __ecereNameSpace__ecere__com__Class * __ecereNameSpace__ecere__com__eSystem_FindClass(struct __ecereNameSpace__ecere__com__Instance * module, char *  name);
507
508 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);
509
510 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);
511
512 extern void __ecereNameSpace__ecere__LoadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module, char *  name);
513
514 extern void __ecereNameSpace__ecere__com__eInstance_Evolve(struct __ecereNameSpace__ecere__com__Instance **  instancePtr, struct __ecereNameSpace__ecere__com__Class * _class);
515
516 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__NameSpace;
517
518 struct __ecereNameSpace__ecere__com__NameSpace
519 {
520 char *  name;
521 struct __ecereNameSpace__ecere__com__NameSpace *  btParent;
522 struct __ecereNameSpace__ecere__com__NameSpace *  left;
523 struct __ecereNameSpace__ecere__com__NameSpace *  right;
524 int depth;
525 struct __ecereNameSpace__ecere__com__NameSpace *  parent;
526 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
527 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
528 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
529 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
530 } __attribute__ ((gcc_struct));
531
532 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Module;
533
534 struct __ecereNameSpace__ecere__com__Module
535 {
536 struct __ecereNameSpace__ecere__com__Instance * application;
537 struct __ecereNameSpace__ecere__sys__OldList classes;
538 struct __ecereNameSpace__ecere__sys__OldList defines;
539 struct __ecereNameSpace__ecere__sys__OldList functions;
540 struct __ecereNameSpace__ecere__sys__OldList modules;
541 struct __ecereNameSpace__ecere__com__Instance * prev;
542 struct __ecereNameSpace__ecere__com__Instance * next;
543 char *  name;
544 void *  library;
545 void *  Unload;
546 int importType;
547 int origImportType;
548 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
549 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
550 } __attribute__ ((gcc_struct));
551
552 extern void __ecereNameSpace__ecere__UnloadTranslatedStrings(struct __ecereNameSpace__ecere__com__Instance * module);
553
554 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Application;
555
556 struct __ecereNameSpace__ecere__com__Application
557 {
558 int argc;
559 char * *  argv;
560 int exitCode;
561 unsigned int isGUIApp;
562 struct __ecereNameSpace__ecere__sys__OldList allModules;
563 char *  parsedCommand;
564 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
565 } __attribute__ ((gcc_struct));
566
567 extern void __ecereNameSpace__ecere__com__eInstance_DecRef(struct __ecereNameSpace__ecere__com__Instance * instance);
568
569 int main(int _argc, char * _argv[])
570 {
571 int exitCode;
572 struct __ecereNameSpace__ecere__com__Instance * module;
573 struct __ecereNameSpace__ecere__com__Class * _class;
574 struct __ecereNameSpace__ecere__com__Method * method;
575 struct __ecereNameSpace__ecere__com__Property * _property;
576
577 __thisModule = __currentModule = module = __ecereNameSpace__ecere__com____ecere_COM_Initialize((unsigned int)1, _argc, (void *)_argv);
578 __ecereNameSpace__ecere__com__eModule_LoadStatic(module, "ec", 2, __ecereDll_Load_ec, __ecereDll_Unload_ec);
579 __ecereNameSpace__ecere__com__eModule_LoadStatic(module, "ecere", 2, __ecereDll_Load_ecere, __ecereDll_Unload_ecere);
580 __ecereRegisterModule_ecc(module);
581 __ecereClass___ecereNameSpace__ecere__com__Application = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Application");
582 __ecereClass___ecereNameSpace__ecere__com__Instance = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Instance");
583 __ecereClass___ecereNameSpace__ecere__com__Module = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Module");
584 __ecereClass_Attrib = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Attrib");
585 __ecereClass_ClassDefinition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ClassDefinition");
586 __ecereClass_ClassImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ClassImport");
587 __ecereClass_CodePosition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "CodePosition");
588 __ecereClass_Context = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Context");
589 __ecereClass_DBTableDef = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "DBTableDef");
590 __ecereClass_Declaration = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Declaration");
591 __ecereClass_Declarator = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Declarator");
592 __ecereClass_Definition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Definition");
593 __ecereClass_Expression = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Expression");
594 __ecereClass_ExtDecl = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ExtDecl");
595 __ecereClass_External = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "External");
596 __ecereClass_FunctionDefinition = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "FunctionDefinition");
597 __ecereClass_FunctionImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "FunctionImport");
598 __ecereClass_GlobalData = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "GlobalData");
599 __ecereClass_Identifier = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Identifier");
600 __ecereClass_ImportedModule = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ImportedModule");
601 __ecereClass_Initializer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Initializer");
602 __ecereClass_Instantiation = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Instantiation");
603 __ecereClass_Location = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Location");
604 __ecereClass_MethodImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "MethodImport");
605 __ecereClass_ModuleImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ModuleImport");
606 __ecereClass_PropertyImport = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "PropertyImport");
607 __ecereClass_Specifier = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Specifier");
608 __ecereClass_Statement = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Statement");
609 __ecereClass_Symbol = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Symbol");
610 __ecereClass_TemplateArgument = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateArgument");
611 __ecereClass_TemplateDatatype = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateDatatype");
612 __ecereClass_TemplateParameter = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TemplateParameter");
613 __ecereClass_Type = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "Type");
614 __ecereClass_TypeName = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "TypeName");
615 __ecereClass___ecereNameSpace__ecere__com__Class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Class");
616 __ecereClass___ecereNameSpace__ecere__com__ClassTemplateArgument = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::ClassTemplateArgument");
617 __ecereClass___ecereNameSpace__ecere__com__DataMember = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::DataMember");
618 __ecereClass___ecereNameSpace__ecere__com__DataValue = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::DataValue");
619 __ecereClass___ecereNameSpace__ecere__com__Method = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Method");
620 __ecereClass___ecereNameSpace__ecere__com__NameSpace = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::NameSpace");
621 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Platform");
622 __ecereProp___ecereNameSpace__ecere__com__Platform_char__PTR_ = _property = __ecereNameSpace__ecere__com__eClass_FindProperty(_class, "char *", module);
623 __ecereClass___ecereNameSpace__ecere__com__Property = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::Property");
624 __ecereClass___ecereNameSpace__ecere__com__SerialBuffer = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::com::SerialBuffer");
625 __ecereClass___ecereNameSpace__ecere__sys__BTNode = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::BTNode");
626 __ecereClass___ecereNameSpace__ecere__sys__BinaryTree = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::BinaryTree");
627 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::DualPipe");
628 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::File");
629 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Eof", module);
630 if(method)
631 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Eof = method->vid;
632 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Read", module);
633 if(method)
634 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read = method->vid;
635 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Seek", module);
636 if(method)
637 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek = method->vid;
638 method = __ecereNameSpace__ecere__com__eClass_FindMethod(_class, "Write", module);
639 if(method)
640 __ecereVMethodID___ecereNameSpace__ecere__sys__File_Write = method->vid;
641 __ecereClass___ecereNameSpace__ecere__sys__OldList = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::OldList");
642 __ecereClass___ecereNameSpace__ecere__sys__TempFile = __ecereNameSpace__ecere__com__eSystem_FindClass(module, "ecere::sys::TempFile");
643 __ecereNameSpace__ecere__LoadTranslatedStrings(module, "ecc");
644 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "CompilerApp");
645 __ecereNameSpace__ecere__com__eInstance_Evolve((struct __ecereNameSpace__ecere__com__Instance **)&__currentModule, _class);
646 __thisModule = __currentModule;
647 __ecereCreateModuleInstances_ecc();
648 ((void (*)(void *))(void *)((struct __ecereNameSpace__ecere__com__Instance *)(char *)__currentModule)->_vTbl[12])(__currentModule);
649 __ecereDestroyModuleInstances_ecc();
650 __ecereNameSpace__ecere__UnloadTranslatedStrings(__currentModule);
651 _class = __ecereNameSpace__ecere__com__eSystem_FindClass(__currentModule, "ecere::com::Application");
652 exitCode = ((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Instance *)__currentModule) + structSize_Module)))->exitCode;
653 (__ecereNameSpace__ecere__com__eInstance_DecRef(__currentModule), __currentModule = 0);
654 return exitCode;
655 }
656
657 void __ecereRegisterModule_ecc_main(struct __ecereNameSpace__ecere__com__Instance * module)
658 {
659 struct __ecereNameSpace__ecere__com__Class * class;
660
661 }
662
663 void __ecereUnregisterModule_ecc_main(struct __ecereNameSpace__ecere__com__Instance * module)
664 {
665
666 }
667