1 /* Code generated from eC source file: output.ec */
3 #define __runtimePlatform 1
4 #elif defined(__APPLE__)
5 #define __runtimePlatform 3
7 #define __runtimePlatform 2
10 typedef long long int64;
11 typedef unsigned long long uint64;
15 #elif defined(__TINYC__)
17 #define __builtin_va_list va_list
18 #define __builtin_va_start va_start
19 #define __builtin_va_end va_end
21 #define strcasecmp stricmp
22 #define strncasecmp strnicmp
23 #define __declspec(x) __attribute__((x))
27 typedef long long int64;
28 typedef unsigned long long uint64;
30 typedef __int64 int64;
31 typedef unsigned __int64 uint64;
34 #define __ENDIAN_PAD(x) (8 - (x))
36 #define __ENDIAN_PAD(x) 0
39 # if defined(__GNUC__) || defined(__TINYC__)
40 # define ecere_stdcall __attribute__((__stdcall__))
41 # define ecere_gcc_struct __attribute__((gcc_struct))
43 # define ecere_stdcall __stdcall
44 # define ecere_gcc_struct
47 # define ecere_stdcall
48 # define ecere_gcc_struct
51 #include <sys/types.h>
54 IDENTIFIER = 258, CONSTANT = 259, STRING_LITERAL = 260, SIZEOF = 261, PTR_OP = 262, INC_OP = 263, DEC_OP = 264, LEFT_OP = 265, RIGHT_OP = 266, LE_OP = 267, GE_OP = 268, EQ_OP = 269, NE_OP = 270, AND_OP = 271, OR_OP = 272, MUL_ASSIGN = 273, DIV_ASSIGN = 274, MOD_ASSIGN = 275, ADD_ASSIGN = 276, SUB_ASSIGN = 277, LEFT_ASSIGN = 278, RIGHT_ASSIGN = 279, AND_ASSIGN = 280, XOR_ASSIGN = 281, OR_ASSIGN = 282, TYPE_NAME = 283, TYPEDEF = 284, EXTERN = 285, STATIC = 286, AUTO = 287, REGISTER = 288, CHAR = 289, SHORT = 290, INT = 291, UINT = 292, INT64 = 293, LONG = 294, SIGNED = 295, UNSIGNED = 296, FLOAT = 297, DOUBLE = 298, CONST = 299, VOLATILE = 300, VOID = 301, VALIST = 302, STRUCT = 303, UNION = 304, ENUM = 305, ELLIPSIS = 306, CASE = 307, DEFAULT = 308, IF = 309, SWITCH = 310, WHILE = 311, DO = 312, FOR = 313, GOTO = 314, CONTINUE = 315, BREAK = 316, RETURN = 317, IFX = 318, ELSE = 319, CLASS = 320, THISCLASS = 321, CLASS_NAME = 322, PROPERTY = 323, SETPROP = 324, GETPROP = 325, NEWOP = 326, RENEW = 327, DELETE = 328, EXT_DECL = 329, EXT_STORAGE = 330, IMPORT = 331, DEFINE = 332, VIRTUAL = 333, ATTRIB = 334, PUBLIC = 335, PRIVATE = 336, TYPED_OBJECT = 337, ANY_OBJECT = 338, _INCREF = 339, EXTENSION = 340, ASM = 341, TYPEOF = 342, WATCH = 343, STOPWATCHING = 344, FIREWATCHERS = 345, WATCHABLE = 346, CLASS_DESIGNER = 347, CLASS_NO_EXPANSION = 348, CLASS_FIXED = 349, ISPROPSET = 350, CLASS_DEFAULT_PROPERTY = 351, PROPERTY_CATEGORY = 352, CLASS_DATA = 353, CLASS_PROPERTY = 354, SUBCLASS = 355, NAMESPACE = 356, NEW0OP = 357, RENEW0 = 358, VAARG = 359, DBTABLE = 360, DBFIELD = 361, DBINDEX = 362, DATABASE_OPEN = 363, ALIGNOF = 364, ATTRIB_DEP = 365, __ATTRIB = 366, BOOL = 367, _BOOL = 368, _COMPLEX = 369, _IMAGINARY = 370, RESTRICT = 371, THREAD = 372, WIDE_STRING_LITERAL = 373, BUILTIN_OFFSETOF = 374
59 unsigned int memoryGuard = 0;
61 extern unsigned int inCompiler;
63 extern unsigned int outputLineNumbers;
65 extern const char * sourceFile;
67 extern const char * outputFile;
69 struct __ecereNameSpace__ecere__sys__OldList
78 struct __ecereNameSpace__ecere__sys__BTNode;
80 struct __ecereNameSpace__ecere__com__DataValue
95 } ecere_gcc_struct __anon1;
98 struct __ecereNameSpace__ecere__com__SerialBuffer
100 unsigned char * _buffer;
106 extern void * __ecereNameSpace__ecere__com__eSystem_New(unsigned int size);
108 extern void * __ecereNameSpace__ecere__com__eSystem_New0(unsigned int size);
110 extern void * __ecereNameSpace__ecere__com__eSystem_Renew(void * memory, unsigned int size);
112 extern void * __ecereNameSpace__ecere__com__eSystem_Renew0(void * memory, unsigned int size);
114 extern void __ecereNameSpace__ecere__com__eSystem_Delete(void * memory);
120 struct PropertyWatch;
122 struct TemplateArgument;
138 extern int strcmp(const char * , const char * );
140 extern char * GetIncludeFileFromID(int id);
142 extern char * strchr(const char * , int);
144 extern char * __ecereNameSpace__ecere__sys__StripLastDirectory(const char * string, char * output);
146 extern char * __ecereNameSpace__ecere__sys__PathCat(char * string, const char * addedPath);
148 extern void __ecereNameSpace__ecere__sys__ChangeCh(char * string, char ch1, char ch2);
150 extern char * strcpy(char * , const char * );
156 struct __ecereNameSpace__ecere__com__LinkList
163 extern char * __ecereNameSpace__ecere__sys__TrimRSpaces(const char * string, char * output);
165 struct __ecereNameSpace__ecere__com__GlobalFunction;
167 void SetMemoryGuard(unsigned int b)
172 unsigned int GetMemoryGuard()
177 extern struct __ecereNameSpace__ecere__sys__OldList * MkList(void);
179 extern struct __ecereNameSpace__ecere__sys__OldList * CopyList(struct __ecereNameSpace__ecere__sys__OldList * source, void * (* CopyFunction)(void * ));
181 extern void ListAdd(struct __ecereNameSpace__ecere__sys__OldList * list, void * item);
185 struct CodePosition start;
186 struct CodePosition end;
189 static void GetSourceName(char * name, const char * src)
194 if(!strchr(src, '/') && !strchr(src, '\\'))
195 __ecereNameSpace__ecere__sys__StripLastDirectory(sourceFile, name);
196 __ecereNameSpace__ecere__sys__PathCat(name, src);
199 __ecereNameSpace__ecere__sys__PathCat(name, sourceFile);
200 __ecereNameSpace__ecere__sys__ChangeCh(name, '\\', '/');
203 extern struct Location yylloc;
209 struct __ecereNameSpace__ecere__sys__OldList * attribs;
219 struct Attrib * attr;
220 } ecere_gcc_struct __anon1;
225 extern void ProcessExpressionType(struct Expression * exp);
227 extern void ComputeExpression(struct Expression * exp);
229 struct FunctionDefinition;
231 static struct FunctionDefinition * curFunction;
233 struct __ecereNameSpace__ecere__com__Class;
235 struct __ecereNameSpace__ecere__com__Instance
238 struct __ecereNameSpace__ecere__com__Class * _class;
242 extern long long __ecereNameSpace__ecere__com__eClass_GetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name);
244 extern void __ecereNameSpace__ecere__com__eClass_SetProperty(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, long long value);
246 extern void * __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
248 extern void __ecereNameSpace__ecere__com__eInstance_SetMethod(struct __ecereNameSpace__ecere__com__Instance * instance, const char * name, void * function);
250 extern void __ecereNameSpace__ecere__com__eInstance_IncRef(struct __ecereNameSpace__ecere__com__Instance * instance);
252 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts;
254 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Putc;
256 int __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(struct __ecereNameSpace__ecere__com__Instance * this, const char * format, ...);
258 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_GetSize;
260 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek;
262 int __ecereVMethodID___ecereNameSpace__ecere__sys__File_Read;
264 extern void __ecereNameSpace__ecere__com__eInstance_DecRef(struct __ecereNameSpace__ecere__com__Instance * instance);
266 struct __ecereNameSpace__ecere__com__Property;
268 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
270 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);
272 extern void __ecereNameSpace__ecere__com__eInstance_Watch(void * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * ));
274 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
278 extern struct Identifier * MkIdentifier(const char * string);
282 extern struct Specifier * CopySpecifier(struct Specifier * spec);
284 extern struct Specifier * MkSpecifierName(const char * name);
288 extern struct Declarator * SpecDeclFromString(const char * string, struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * baseDecl);
290 extern struct Declarator * MkDeclaratorIdentifier(struct Identifier * id);
292 struct TemplateDatatype
294 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
295 struct Declarator * decl;
298 extern struct Declarator * PlugDeclarator(struct Declarator * decl, struct Declarator * baseDecl);
300 extern struct Identifier * GetDeclId(struct Declarator * decl);
304 struct __ecereNameSpace__ecere__com__Property
306 struct __ecereNameSpace__ecere__com__Property * prev;
307 struct __ecereNameSpace__ecere__com__Property * next;
309 unsigned int isProperty;
312 struct __ecereNameSpace__ecere__com__Class * _class;
313 const char * dataTypeString;
314 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
315 struct Type * dataType;
316 void (* Set)(void * , int);
317 int (* Get)(void * );
318 unsigned int (* IsSet)(void * );
322 unsigned int conversion;
323 unsigned int watcherOffset;
324 const char * category;
325 unsigned int compiled;
326 unsigned int selfWatchable;
327 unsigned int isWatchable;
330 extern void PrintType(struct Type * type, char * string, unsigned int printName, unsigned int fullName);
336 struct TypeName * prev;
337 struct TypeName * next;
339 struct __ecereNameSpace__ecere__sys__OldList * qualifiers;
340 struct Declarator * declarator;
342 struct Expression * bitCount;
345 extern struct TypeName * MkTypeName(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Declarator * declarator);
347 extern void InstDeclPassTypeName(struct TypeName * type, unsigned int param);
349 extern void FreeTypeName(struct TypeName * typeName);
355 struct Identifier * prev;
356 struct Identifier * next;
358 struct Symbol * classSym;
359 struct Specifier * _class;
361 struct Identifier * badID;
364 extern struct Symbol * FindClass(const char * name);
366 struct __ecereNameSpace__ecere__sys__BinaryTree;
368 struct __ecereNameSpace__ecere__sys__BinaryTree
370 struct __ecereNameSpace__ecere__sys__BTNode * root;
372 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
373 void (* FreeKey)(void * key);
380 struct Pointer * prev;
381 struct Pointer * next;
383 struct __ecereNameSpace__ecere__sys__OldList * qualifiers;
384 struct Pointer * pointer;
389 struct Declarator * prev;
390 struct Declarator * next;
393 struct Symbol * symbol;
394 struct Declarator * declarator;
397 struct Identifier * identifier;
400 struct Expression * exp;
401 struct Expression * posExp;
402 struct Attrib * attrib;
403 } ecere_gcc_struct structDecl;
406 struct Expression * exp;
407 struct Specifier * enumClass;
408 } ecere_gcc_struct array;
411 struct __ecereNameSpace__ecere__sys__OldList * parameters;
412 } ecere_gcc_struct function;
415 struct Pointer * pointer;
416 } ecere_gcc_struct pointer;
419 struct ExtDecl * extended;
420 } ecere_gcc_struct extended;
421 } ecere_gcc_struct __anon1;
432 struct Attribute * prev;
433 struct Attribute * next;
436 struct Expression * exp;
439 struct __ecereNameSpace__ecere__com__Module;
441 extern struct __ecereNameSpace__ecere__com__GlobalFunction * __ecereNameSpace__ecere__com__eSystem_RegisterFunction(const char * name, const char * type, void * func, struct __ecereNameSpace__ecere__com__Instance * module, int declMode);
443 struct __ecereNameSpace__ecere__com__DataMember;
445 struct __ecereNameSpace__ecere__com__DataMember
447 struct __ecereNameSpace__ecere__com__DataMember * prev;
448 struct __ecereNameSpace__ecere__com__DataMember * next;
450 unsigned int isProperty;
453 struct __ecereNameSpace__ecere__com__Class * _class;
454 const char * dataTypeString;
455 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
456 struct Type * dataType;
460 struct __ecereNameSpace__ecere__sys__OldList members;
461 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
463 short structAlignment;
464 short pointerAlignment;
471 struct AsmField * prev;
472 struct AsmField * next;
475 struct Expression * expression;
476 struct Identifier * symbolic;
483 struct Enumerator * prev;
484 struct Enumerator * next;
486 struct Identifier * id;
487 struct Expression * exp;
496 struct Initializer * prev;
497 struct Initializer * next;
502 struct Expression * exp;
503 struct __ecereNameSpace__ecere__sys__OldList * list;
504 } ecere_gcc_struct __anon1;
505 unsigned int isConstant;
506 struct Identifier * id;
511 struct MemberInit * prev;
512 struct MemberInit * next;
514 struct Location realLoc;
515 struct __ecereNameSpace__ecere__sys__OldList * identifiers;
516 struct Initializer * initializer;
518 unsigned int variable;
519 unsigned int takeOutExp;
524 struct FunctionDefinition
526 struct FunctionDefinition * prev;
527 struct FunctionDefinition * next;
529 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
530 struct Declarator * declarator;
531 struct __ecereNameSpace__ecere__sys__OldList * declarations;
532 struct Statement * body;
533 struct __ecereNameSpace__ecere__com__Class * _class;
534 struct __ecereNameSpace__ecere__sys__OldList attached;
537 struct Symbol * propSet;
539 unsigned int propertyNoThis;
542 struct __ecereNameSpace__ecere__com__Method;
544 struct __ecereNameSpace__ecere__com__ClassTemplateArgument
550 const char * dataTypeString;
551 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
552 } ecere_gcc_struct __anon1;
553 struct __ecereNameSpace__ecere__com__DataValue expression;
556 const char * memberString;
559 struct __ecereNameSpace__ecere__com__DataMember * member;
560 struct __ecereNameSpace__ecere__com__Property * prop;
561 struct __ecereNameSpace__ecere__com__Method * method;
562 } ecere_gcc_struct __anon1;
563 } ecere_gcc_struct __anon2;
564 } ecere_gcc_struct __anon1;
567 struct __ecereNameSpace__ecere__com__Method
570 struct __ecereNameSpace__ecere__com__Method * parent;
571 struct __ecereNameSpace__ecere__com__Method * left;
572 struct __ecereNameSpace__ecere__com__Method * right;
577 struct __ecereNameSpace__ecere__com__Class * _class;
579 const char * dataTypeString;
580 struct Type * dataType;
584 struct TemplateParameter;
588 struct Specifier * prev;
589 struct Specifier * next;
597 struct ExtDecl * extDecl;
599 struct Symbol * symbol;
600 struct __ecereNameSpace__ecere__sys__OldList * templateArgs;
601 struct Specifier * nsSpec;
602 } ecere_gcc_struct __anon1;
605 struct Identifier * id;
606 struct __ecereNameSpace__ecere__sys__OldList * list;
607 struct __ecereNameSpace__ecere__sys__OldList * baseSpecs;
608 struct __ecereNameSpace__ecere__sys__OldList * definitions;
609 unsigned int addNameSpace;
610 struct Context * ctx;
611 struct ExtDecl * extDeclStruct;
612 } ecere_gcc_struct __anon2;
613 struct Expression * expression;
614 struct Specifier * _class;
615 struct TemplateParameter * templateParameter;
616 } ecere_gcc_struct __anon1;
619 struct TemplateParameter
621 struct TemplateParameter * prev;
622 struct TemplateParameter * next;
625 struct Identifier * identifier;
628 struct TemplateDatatype * dataType;
630 } ecere_gcc_struct __anon1;
631 struct TemplateArgument * defaultArgument;
632 const char * dataTypeString;
633 struct Type * baseType;
643 struct Symbol * _class;
646 struct __ecereNameSpace__ecere__sys__OldList members;
648 } ecere_gcc_struct __anon1;
651 struct Type * returnType;
652 struct __ecereNameSpace__ecere__sys__OldList params;
653 struct Symbol * thisClass;
654 unsigned int staticMethod;
655 struct TemplateParameter * thisClassTemplate;
656 } ecere_gcc_struct __anon2;
659 struct __ecereNameSpace__ecere__com__Method * method;
660 struct __ecereNameSpace__ecere__com__Class * methodClass;
661 struct __ecereNameSpace__ecere__com__Class * usedClass;
662 } ecere_gcc_struct __anon3;
665 struct Type * arrayType;
667 struct Expression * arraySizeExp;
668 unsigned int freeExp;
669 struct Symbol * enumClass;
670 } ecere_gcc_struct __anon4;
672 struct TemplateParameter * templateParameter;
673 } ecere_gcc_struct __anon1;
678 struct __ecereNameSpace__ecere__com__Class * thisClassFrom;
686 unsigned int isSigned : 1;
687 unsigned int constant : 1;
688 unsigned int truth : 1;
689 unsigned int byReference : 1;
690 unsigned int extraParam : 1;
691 unsigned int directClassAccess : 1;
692 unsigned int computing : 1;
693 unsigned int keepCast : 1;
694 unsigned int passAsTemplate : 1;
695 unsigned int dllExport : 1;
696 unsigned int attrStdcall : 1;
697 unsigned int declaredWithStruct : 1;
698 unsigned int typedByReference : 1;
699 unsigned int casted : 1;
700 unsigned int pointerAlignment : 1;
701 unsigned int isLong : 1;
702 unsigned int signedBeforePromotion : 1;
709 struct Statement * prev;
710 struct Statement * next;
715 struct __ecereNameSpace__ecere__sys__OldList * expressions;
718 struct Identifier * id;
719 struct Statement * stmt;
720 } ecere_gcc_struct labeled;
723 struct Expression * exp;
724 struct Statement * stmt;
725 } ecere_gcc_struct caseStmt;
728 struct __ecereNameSpace__ecere__sys__OldList * declarations;
729 struct __ecereNameSpace__ecere__sys__OldList * statements;
730 struct Context * context;
731 unsigned int isSwitch;
732 } ecere_gcc_struct compound;
735 struct __ecereNameSpace__ecere__sys__OldList * exp;
736 struct Statement * stmt;
737 struct Statement * elseStmt;
738 } ecere_gcc_struct ifStmt;
741 struct __ecereNameSpace__ecere__sys__OldList * exp;
742 struct Statement * stmt;
743 } ecere_gcc_struct switchStmt;
746 struct __ecereNameSpace__ecere__sys__OldList * exp;
747 struct Statement * stmt;
748 } ecere_gcc_struct whileStmt;
751 struct __ecereNameSpace__ecere__sys__OldList * exp;
752 struct Statement * stmt;
753 } ecere_gcc_struct doWhile;
756 struct Statement * init;
757 struct Statement * check;
758 struct __ecereNameSpace__ecere__sys__OldList * increment;
759 struct Statement * stmt;
760 } ecere_gcc_struct forStmt;
763 struct Identifier * id;
764 } ecere_gcc_struct gotoStmt;
767 struct Specifier * spec;
769 struct __ecereNameSpace__ecere__sys__OldList * inputFields;
770 struct __ecereNameSpace__ecere__sys__OldList * outputFields;
771 struct __ecereNameSpace__ecere__sys__OldList * clobberedFields;
772 } ecere_gcc_struct asmStmt;
775 struct Expression * watcher;
776 struct Expression * object;
777 struct __ecereNameSpace__ecere__sys__OldList * watches;
778 } ecere_gcc_struct _watch;
781 struct Identifier * id;
782 struct __ecereNameSpace__ecere__sys__OldList * exp;
783 struct __ecereNameSpace__ecere__sys__OldList * filter;
784 struct Statement * stmt;
785 } ecere_gcc_struct forEachStmt;
786 struct Declaration * decl;
787 } ecere_gcc_struct __anon1;
790 struct Instantiation;
794 struct Expression * prev;
795 struct Expression * next;
803 struct Identifier * identifier;
804 } ecere_gcc_struct __anon1;
805 struct Statement * compound;
806 struct Instantiation * instance;
810 unsigned int intlString;
811 unsigned int wideString;
812 } ecere_gcc_struct __anon2;
813 struct __ecereNameSpace__ecere__sys__OldList * list;
816 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
817 struct Declarator * decl;
818 } ecere_gcc_struct _classExp;
821 struct Identifier * id;
822 } ecere_gcc_struct classData;
825 struct Expression * exp;
826 struct __ecereNameSpace__ecere__sys__OldList * arguments;
827 struct Location argLoc;
828 } ecere_gcc_struct call;
831 struct Expression * exp;
832 struct __ecereNameSpace__ecere__sys__OldList * index;
833 } ecere_gcc_struct index;
836 struct Expression * exp;
837 struct Identifier * member;
839 unsigned int thisPtr;
840 } ecere_gcc_struct member;
844 struct Expression * exp1;
845 struct Expression * exp2;
846 } ecere_gcc_struct op;
847 struct TypeName * typeName;
848 struct Specifier * _class;
851 struct TypeName * typeName;
852 struct Expression * exp;
853 } ecere_gcc_struct cast;
856 struct Expression * cond;
857 struct __ecereNameSpace__ecere__sys__OldList * exp;
858 struct Expression * elseExp;
859 } ecere_gcc_struct cond;
862 struct TypeName * typeName;
863 struct Expression * size;
864 } ecere_gcc_struct _new;
867 struct TypeName * typeName;
868 struct Expression * size;
869 struct Expression * exp;
870 } ecere_gcc_struct _renew;
874 struct Identifier * id;
875 } ecere_gcc_struct db;
878 struct Expression * ds;
879 struct Expression * name;
880 } ecere_gcc_struct dbopen;
883 struct TypeName * typeName;
884 struct Initializer * initializer;
885 } ecere_gcc_struct initializer;
888 struct Expression * exp;
889 struct TypeName * typeName;
890 } ecere_gcc_struct vaArg;
893 struct TypeName * typeName;
894 struct Identifier * id;
895 } ecere_gcc_struct offset;
896 } ecere_gcc_struct __anon1;
897 unsigned int debugValue;
898 struct __ecereNameSpace__ecere__com__DataValue val;
900 unsigned int hasAddress;
901 struct Type * expType;
902 struct Type * destType;
905 unsigned int byReference;
906 unsigned int isConstant;
907 unsigned int addedThis;
908 unsigned int needCast;
909 unsigned int thisPtr;
910 unsigned int opDestType;
911 unsigned int usedInComparison;
912 unsigned int ambiguousUnits;
913 unsigned int parentOpDestType;
914 unsigned int needTemplateCast;
919 struct Declaration * prev;
920 struct Declaration * next;
927 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
928 struct __ecereNameSpace__ecere__sys__OldList * declarators;
929 } ecere_gcc_struct __anon1;
930 struct Instantiation * inst;
933 struct Identifier * id;
934 struct Expression * exp;
935 } ecere_gcc_struct __anon2;
936 } ecere_gcc_struct __anon1;
937 struct Specifier * extStorage;
938 struct Symbol * symbol;
944 struct Instantiation * prev;
945 struct Instantiation * next;
947 struct Specifier * _class;
948 struct Expression * exp;
949 struct __ecereNameSpace__ecere__sys__OldList * members;
950 struct Symbol * symbol;
951 unsigned int fullSet;
952 unsigned int isConstant;
953 unsigned char * data;
954 struct Location nameLoc;
955 struct Location insideLoc;
959 struct ClassDefinition;
961 struct ClassDefinition
963 struct ClassDefinition * prev;
964 struct ClassDefinition * next;
966 struct Specifier * _class;
967 struct __ecereNameSpace__ecere__sys__OldList * baseSpecs;
968 struct __ecereNameSpace__ecere__sys__OldList * definitions;
969 struct Symbol * symbol;
970 struct Location blockStart;
971 struct Location nameLoc;
973 unsigned int deleteWatchable;
976 struct __ecereNameSpace__ecere__com__NameSpace;
978 struct __ecereNameSpace__ecere__com__NameSpace
981 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
982 struct __ecereNameSpace__ecere__com__NameSpace * left;
983 struct __ecereNameSpace__ecere__com__NameSpace * right;
985 struct __ecereNameSpace__ecere__com__NameSpace * parent;
986 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
987 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
988 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
989 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
992 struct __ecereNameSpace__ecere__com__Class
994 struct __ecereNameSpace__ecere__com__Class * prev;
995 struct __ecereNameSpace__ecere__com__Class * next;
1001 unsigned int (* Constructor)(void * );
1002 void (* Destructor)(void * );
1005 struct __ecereNameSpace__ecere__com__Class * base;
1006 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
1007 struct __ecereNameSpace__ecere__sys__BinaryTree members;
1008 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
1009 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
1010 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
1011 struct __ecereNameSpace__ecere__sys__OldList derivatives;
1015 struct __ecereNameSpace__ecere__com__Instance * module;
1016 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
1017 const char * dataTypeString;
1018 struct Type * dataType;
1020 int defaultAlignment;
1021 void (* Initialize)();
1023 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
1024 const char * designerClass;
1025 unsigned int noExpansion;
1026 const char * defaultProperty;
1027 unsigned int comRedefinition;
1030 unsigned int internalDecl;
1032 unsigned int computeSize;
1033 short structAlignment;
1034 short pointerAlignment;
1035 int destructionWatchOffset;
1037 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
1038 int inheritanceAccess;
1039 const char * fullName;
1041 struct __ecereNameSpace__ecere__sys__OldList conversions;
1042 struct __ecereNameSpace__ecere__sys__OldList templateParams;
1043 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
1044 struct __ecereNameSpace__ecere__com__Class * templateClass;
1045 struct __ecereNameSpace__ecere__sys__OldList templatized;
1047 unsigned int isInstanceClass;
1048 unsigned int byValueSystemClass;
1051 struct __ecereNameSpace__ecere__com__Application
1054 const char * * argv;
1056 unsigned int isGUIApp;
1057 struct __ecereNameSpace__ecere__sys__OldList allModules;
1058 char * parsedCommand;
1059 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
1062 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
1064 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__TempFile;
1066 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__File;
1068 struct __ecereNameSpace__ecere__com__Module
1070 struct __ecereNameSpace__ecere__com__Instance * application;
1071 struct __ecereNameSpace__ecere__sys__OldList classes;
1072 struct __ecereNameSpace__ecere__sys__OldList defines;
1073 struct __ecereNameSpace__ecere__sys__OldList functions;
1074 struct __ecereNameSpace__ecere__sys__OldList modules;
1075 struct __ecereNameSpace__ecere__com__Instance * prev;
1076 struct __ecereNameSpace__ecere__com__Instance * next;
1082 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
1083 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
1086 static void OutputIdentifier(struct Identifier * id, struct __ecereNameSpace__ecere__com__Instance * f)
1092 if(id->_class->type == 8)
1094 if(id->_class->__anon1.templateParameter && id->_class->__anon1.templateParameter->identifier && id->_class->__anon1.templateParameter->identifier->string)
1096 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1098 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1099 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1101 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1102 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1103 __internal_VirtualMethod ? __internal_VirtualMethod(f, id->_class->__anon1.templateParameter->identifier->string) : (unsigned int)1;
1108 if(id->_class->__anon1.__anon1.name)
1110 if(!strcmp(id->_class->__anon1.__anon1.name, "class"))
1112 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1114 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1115 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1117 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1118 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1119 __internal_VirtualMethod ? __internal_VirtualMethod(f, "typed_object") : (unsigned int)1;
1123 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1125 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1126 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1128 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1129 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1130 __internal_VirtualMethod ? __internal_VirtualMethod(f, id->_class->__anon1.__anon1.name) : (unsigned int)1;
1135 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1137 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1138 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1140 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1141 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1142 __internal_VirtualMethod ? __internal_VirtualMethod(f, "::") : (unsigned int)1;
1147 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1149 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1150 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1152 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1153 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1154 __internal_VirtualMethod ? __internal_VirtualMethod(f, (id && id->string) ? id->string : "(null identifier)") : (unsigned int)1;
1158 static void OutputOperator(int op, struct __ecereNameSpace__ecere__com__Instance * f)
1164 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1166 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1167 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1169 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1170 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1171 __internal_VirtualMethod ? __internal_VirtualMethod(f, "++") : (unsigned int)1;
1176 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1178 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1179 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1181 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1182 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1183 __internal_VirtualMethod ? __internal_VirtualMethod(f, "--") : (unsigned int)1;
1188 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1190 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1191 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1193 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1194 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1195 __internal_VirtualMethod ? __internal_VirtualMethod(f, "sizeof ") : (unsigned int)1;
1200 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1202 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1203 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1205 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1206 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1207 __internal_VirtualMethod ? __internal_VirtualMethod(f, "<<") : (unsigned int)1;
1212 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1214 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1215 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1217 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1218 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1219 __internal_VirtualMethod ? __internal_VirtualMethod(f, ">>") : (unsigned int)1;
1224 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1226 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1227 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1229 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1230 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1231 __internal_VirtualMethod ? __internal_VirtualMethod(f, "<=") : (unsigned int)1;
1236 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1238 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1239 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1241 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1242 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1243 __internal_VirtualMethod ? __internal_VirtualMethod(f, ">=") : (unsigned int)1;
1248 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1250 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1251 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1253 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1254 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1255 __internal_VirtualMethod ? __internal_VirtualMethod(f, "==") : (unsigned int)1;
1260 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1262 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1263 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1265 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1266 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1267 __internal_VirtualMethod ? __internal_VirtualMethod(f, "!=") : (unsigned int)1;
1272 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1274 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1275 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1277 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1278 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1279 __internal_VirtualMethod ? __internal_VirtualMethod(f, "&&") : (unsigned int)1;
1284 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1286 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1287 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1289 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1290 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1291 __internal_VirtualMethod ? __internal_VirtualMethod(f, "||") : (unsigned int)1;
1296 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1298 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1299 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1301 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1302 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1303 __internal_VirtualMethod ? __internal_VirtualMethod(f, "*=") : (unsigned int)1;
1308 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1310 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1311 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1313 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1314 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1315 __internal_VirtualMethod ? __internal_VirtualMethod(f, "/=") : (unsigned int)1;
1320 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1322 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1323 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1325 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1326 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1327 __internal_VirtualMethod ? __internal_VirtualMethod(f, "%=") : (unsigned int)1;
1332 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1334 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1335 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1337 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1338 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1339 __internal_VirtualMethod ? __internal_VirtualMethod(f, "+=") : (unsigned int)1;
1344 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1346 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1347 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1349 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1350 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1351 __internal_VirtualMethod ? __internal_VirtualMethod(f, "-=") : (unsigned int)1;
1356 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1358 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1359 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1361 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1362 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1363 __internal_VirtualMethod ? __internal_VirtualMethod(f, "<<=") : (unsigned int)1;
1368 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1370 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1371 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1373 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1374 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1375 __internal_VirtualMethod ? __internal_VirtualMethod(f, ">>=") : (unsigned int)1;
1380 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1382 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1383 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1385 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1386 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1387 __internal_VirtualMethod ? __internal_VirtualMethod(f, "&=") : (unsigned int)1;
1392 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1394 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1395 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1397 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1398 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1399 __internal_VirtualMethod ? __internal_VirtualMethod(f, "^=") : (unsigned int)1;
1404 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1406 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1407 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1409 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1410 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1411 __internal_VirtualMethod ? __internal_VirtualMethod(f, "|=") : (unsigned int)1;
1428 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, char ch);
1430 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, char ch))__extension__ ({
1431 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1433 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1434 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Putc]);
1435 __internal_VirtualMethod ? __internal_VirtualMethod(f, (char)op) : (unsigned int)1;
1440 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1442 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1443 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1445 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1446 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1447 __internal_VirtualMethod ? __internal_VirtualMethod(f, "delete ") : (unsigned int)1;
1453 void __ecereUnregisterModule_output(struct __ecereNameSpace__ecere__com__Instance * module)
1458 struct ClassFunction;
1462 struct ClassDef * prev;
1463 struct ClassDef * next;
1464 struct Location loc;
1468 struct Declaration * decl;
1469 struct ClassFunction * function;
1470 struct __ecereNameSpace__ecere__sys__OldList * defProperties;
1471 struct PropertyDef * propertyDef;
1472 struct PropertyWatch * propertyWatch;
1474 struct Identifier * defaultProperty;
1477 struct Identifier * id;
1478 struct Initializer * initializer;
1479 } ecere_gcc_struct __anon1;
1480 } ecere_gcc_struct __anon1;
1487 struct MembersInit * prev;
1488 struct MembersInit * next;
1489 struct Location loc;
1493 struct __ecereNameSpace__ecere__sys__OldList * dataMembers;
1494 struct ClassFunction * function;
1495 } ecere_gcc_struct __anon1;
1498 struct ClassFunction
1500 struct ClassFunction * prev;
1501 struct ClassFunction * next;
1502 struct Location loc;
1503 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
1504 struct Declarator * declarator;
1505 struct __ecereNameSpace__ecere__sys__OldList * declarations;
1506 struct Statement * body;
1507 struct __ecereNameSpace__ecere__com__Class * _class;
1508 struct __ecereNameSpace__ecere__sys__OldList attached;
1511 struct Symbol * propSet;
1512 unsigned int isVirtual;
1513 unsigned int isConstructor;
1514 unsigned int isDestructor;
1515 unsigned int dontMangle;
1520 struct InitDeclarator;
1522 struct InitDeclarator
1524 struct InitDeclarator * prev;
1525 struct InitDeclarator * next;
1526 struct Location loc;
1527 struct Declarator * declarator;
1528 struct Initializer * initializer;
1533 typedef union YYSTYPE
1538 struct Identifier * id;
1539 struct Expression * exp;
1540 struct Specifier * specifier;
1541 struct __ecereNameSpace__ecere__sys__OldList * list;
1542 struct Enumerator * enumerator;
1543 struct Declarator * declarator;
1544 struct Pointer * pointer;
1545 struct Initializer * initializer;
1546 struct InitDeclarator * initDeclarator;
1547 struct TypeName * typeName;
1548 struct Declaration * declaration;
1549 struct Statement * stmt;
1550 struct FunctionDefinition * function;
1551 struct External * external;
1552 struct Context * context;
1553 struct AsmField * asmField;
1554 struct Attrib * attrib;
1555 struct ExtDecl * extDecl;
1556 struct Attribute * attribute;
1557 struct Instantiation * instance;
1558 struct MembersInit * membersInit;
1559 struct MemberInit * memberInit;
1560 struct ClassFunction * classFunction;
1561 struct ClassDefinition * _class;
1562 struct ClassDef * classDef;
1563 struct PropertyDef * prop;
1565 struct Symbol * symbol;
1566 struct PropertyWatch * propertyWatch;
1567 struct TemplateParameter * templateParameter;
1568 struct TemplateArgument * templateArgument;
1569 struct TemplateDatatype * templateDatatype;
1570 struct DBTableEntry * dbtableEntry;
1571 struct DBIndexItem * dbindexItem;
1572 struct DBTableDef * dbtableDef;
1573 } ecere_gcc_struct YYSTYPE;
1575 extern YYSTYPE yylval;
1580 struct Symbol * parent;
1581 struct Symbol * left;
1582 struct Symbol * right;
1587 struct __ecereNameSpace__ecere__com__Method * method;
1588 struct __ecereNameSpace__ecere__com__Property * _property;
1589 struct __ecereNameSpace__ecere__com__Class * registered;
1590 } ecere_gcc_struct __anon1;
1591 unsigned int notYetDeclared;
1596 struct External * pointerExternal;
1597 struct External * structExternal;
1598 } ecere_gcc_struct __anon1;
1601 struct External * externalGet;
1602 struct External * externalSet;
1603 struct External * externalPtr;
1604 struct External * externalIsSet;
1605 } ecere_gcc_struct __anon2;
1608 struct External * methodExternal;
1609 struct External * methodCodeExternal;
1610 } ecere_gcc_struct __anon3;
1611 } ecere_gcc_struct __anon2;
1612 unsigned int imported;
1613 unsigned int declaredStructSym;
1614 struct __ecereNameSpace__ecere__com__Class * _class;
1615 unsigned int declaredStruct;
1616 unsigned int needConstructor;
1617 unsigned int needDestructor;
1618 char * constructorName;
1621 char * destructorName;
1622 struct ModuleImport * module;
1623 struct ClassImport * _import;
1624 struct Location nameLoc;
1625 unsigned int isParam;
1626 unsigned int isRemote;
1627 unsigned int isStruct;
1628 unsigned int fireWatchersDone;
1630 unsigned int classData;
1631 unsigned int isStatic;
1633 struct __ecereNameSpace__ecere__sys__OldList * templateParams;
1634 struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
1635 struct Context * ctx;
1637 struct Expression * propCategory;
1638 unsigned int mustRegister;
1643 struct External * prev;
1644 struct External * next;
1645 struct Location loc;
1647 struct Symbol * symbol;
1650 struct FunctionDefinition * function;
1651 struct ClassDefinition * _class;
1652 struct Declaration * declaration;
1653 char * importString;
1654 struct Identifier * id;
1655 struct DBTableDef * table;
1656 } ecere_gcc_struct __anon1;
1658 struct External * fwdDecl;
1659 struct __ecereNameSpace__ecere__com__Instance * outgoing;
1660 struct __ecereNameSpace__ecere__com__Instance * incoming;
1661 int nonBreakableIncoming;
1664 static void OutputSpecifier(struct Specifier * spec, struct __ecereNameSpace__ecere__com__Instance * f, unsigned int typeName);
1666 static void OutputPointer(struct Pointer * ptr, struct __ecereNameSpace__ecere__com__Instance * f)
1669 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1671 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1672 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1674 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1675 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1676 __internal_VirtualMethod ? __internal_VirtualMethod(f, "*") : (unsigned int)1;
1680 struct Specifier * spec;
1683 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1685 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1686 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1688 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1689 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1690 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1692 for(spec = (*ptr->qualifiers).first; spec; spec = spec->next)
1694 OutputSpecifier(spec, f, 0);
1697 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1699 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1700 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1702 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1703 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1704 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1710 OutputPointer(ptr->pointer, f);
1714 void OutputExpression(struct Expression * exp, struct __ecereNameSpace__ecere__com__Instance * f);
1716 static void OutputAsmField(struct AsmField * field, struct __ecereNameSpace__ecere__com__Instance * f)
1721 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1723 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1724 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1726 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1727 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1728 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
1730 OutputIdentifier(field->symbolic, f);
1732 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1734 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1735 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1737 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1738 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1739 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
1743 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1745 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1746 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1748 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1749 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1750 __internal_VirtualMethod ? __internal_VirtualMethod(f, field->command) : (unsigned int)1;
1752 if(field->expression)
1755 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1757 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1758 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1760 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1761 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1762 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
1764 OutputExpression(field->expression, f);
1766 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1768 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1769 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1771 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1772 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1773 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
1778 static void OutputEnumerator(struct Enumerator * enumerator, struct __ecereNameSpace__ecere__com__Instance * f)
1780 OutputIdentifier(enumerator->id, f);
1784 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1786 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1787 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1789 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1790 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1791 __internal_VirtualMethod ? __internal_VirtualMethod(f, " = ") : (unsigned int)1;
1793 OutputExpression(enumerator->exp, f);
1797 static void OutputAttribute(struct Attribute * attr, struct __ecereNameSpace__ecere__com__Instance * f)
1801 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1803 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1804 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1806 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1807 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1808 __internal_VirtualMethod ? __internal_VirtualMethod(f, attr->attr) : (unsigned int)1;
1813 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1815 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1816 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1818 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1819 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1820 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1822 OutputExpression(attr->exp, f);
1826 static void OutputInitializer(struct Initializer * initializer, struct __ecereNameSpace__ecere__com__Instance * f)
1828 char name[274] = "";
1829 char origName[274] = "";
1833 GetSourceName(name, initializer->loc.start.included ? GetIncludeFileFromID(initializer->loc.start.included) : (((void *)0)));
1834 __ecereNameSpace__ecere__sys__PathCat(origName, outputFile);
1835 __ecereNameSpace__ecere__sys__ChangeCh(origName, '\\', '/');
1837 if(initializer->type == 1)
1839 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1841 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1842 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1844 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1845 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1846 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
1851 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1853 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1854 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1856 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1857 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1858 __internal_VirtualMethod ? __internal_VirtualMethod(f, ".") : (unsigned int)1;
1860 OutputIdentifier(initializer->id, f);
1862 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1864 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1865 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1867 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1868 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1869 __internal_VirtualMethod ? __internal_VirtualMethod(f, " =") : (unsigned int)1;
1872 switch(initializer->type)
1876 struct Initializer * init;
1880 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1882 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1883 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1885 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1886 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1887 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1890 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1892 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1893 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1895 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1896 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1897 __internal_VirtualMethod ? __internal_VirtualMethod(f, "{\n") : (unsigned int)1;
1900 if(inCompiler && outputLineNumbers && initializer->loc.start.line)
1902 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", initializer->loc.start.line, name);
1905 for(init = (*initializer->__anon1.list).first; init; init = init->next)
1907 OutputInitializer(init, f);
1910 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1912 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1913 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1915 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1916 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1917 __internal_VirtualMethod ? __internal_VirtualMethod(f, init->next->type == 1 ? "," : ", ") : (unsigned int)1;
1921 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1923 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1924 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1926 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1927 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1928 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n}") : (unsigned int)1;
1930 if(inCompiler && outputLineNumbers && initializer->loc.start.line)
1932 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", initializer->loc.start.line, name);
1941 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1943 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1944 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1946 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1947 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1948 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1950 if(initializer->__anon1.exp)
1951 OutputExpression(initializer->__anon1.exp, f);
1956 static void OutputAttrib(struct Attrib * attr, struct __ecereNameSpace__ecere__com__Instance * f)
1962 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1964 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1965 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1967 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1968 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1969 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__attribute__((") : (unsigned int)1;
1974 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1976 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1977 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1979 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1980 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1981 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__attribute((") : (unsigned int)1;
1986 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1988 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1989 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1991 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1992 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1993 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__attribute_deprecated__((") : (unsigned int)1;
1999 struct Attribute * attrib;
2001 for(attrib = (*attr->attribs).first; attrib; attrib = attrib->next)
2005 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2007 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2008 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2010 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2011 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2012 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2014 OutputAttribute(attrib, f);
2018 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2020 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2021 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2023 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2024 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2025 __internal_VirtualMethod ? __internal_VirtualMethod(f, "))") : (unsigned int)1;
2029 static void OutputMemberInit(struct MemberInit * init, struct __ecereNameSpace__ecere__com__Instance * f)
2031 if(init->identifiers)
2033 if((*init->identifiers).count > 1)
2035 struct Identifier * id;
2037 for(id = (*init->identifiers).first; id; id = id->next)
2039 OutputIdentifier(id, f);
2042 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2044 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2045 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2047 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2048 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2049 __internal_VirtualMethod ? __internal_VirtualMethod(f, ".") : (unsigned int)1;
2053 else if((*init->identifiers).first)
2054 OutputIdentifier((*init->identifiers).first, f);
2056 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2058 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2059 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2061 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2062 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2063 __internal_VirtualMethod ? __internal_VirtualMethod(f, " =") : (unsigned int)1;
2065 if(init->initializer && init->initializer->type == 0)
2067 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2069 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2070 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2072 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2073 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2074 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2077 if(init->initializer)
2078 OutputInitializer(init->initializer, f);
2081 static void OutputExtDecl(struct ExtDecl * extDecl, struct __ecereNameSpace__ecere__com__Instance * f)
2083 if(extDecl->type == 0 && extDecl->__anon1.s)
2085 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2087 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2088 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2090 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2091 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2092 __internal_VirtualMethod ? __internal_VirtualMethod(f, extDecl->__anon1.s) : (unsigned int)1;
2094 else if(extDecl->type == 1)
2095 OutputAttrib(extDecl->__anon1.attr, f);
2098 void OutputTypeName(struct TypeName * type, struct __ecereNameSpace__ecere__com__Instance * f, unsigned int typeName);
2100 static void OutputDeclarator(struct Declarator * decl, struct __ecereNameSpace__ecere__com__Instance * f)
2105 if(decl->declarator)
2107 OutputDeclarator(decl->declarator, f);
2109 if(decl->__anon1.structDecl.exp)
2112 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2114 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2115 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2117 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2118 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2119 __internal_VirtualMethod ? __internal_VirtualMethod(f, " : ") : (unsigned int)1;
2121 OutputExpression(decl->__anon1.structDecl.exp, f);
2123 if(decl->__anon1.structDecl.posExp)
2126 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2128 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2129 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2131 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2132 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2133 __internal_VirtualMethod ? __internal_VirtualMethod(f, " : ") : (unsigned int)1;
2135 OutputExpression(decl->__anon1.structDecl.posExp, f);
2137 if(decl->__anon1.structDecl.attrib)
2140 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2142 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2143 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2145 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2146 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2147 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2149 OutputAttrib(decl->__anon1.structDecl.attrib, f);
2153 OutputIdentifier(decl->__anon1.identifier, f);
2157 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2159 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2160 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2162 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2163 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2164 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
2166 OutputDeclarator(decl->declarator, f);
2168 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2170 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2171 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2173 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2174 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2175 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
2179 if(decl->__anon1.extended.extended)
2180 OutputExtDecl(decl->__anon1.extended.extended, f);
2182 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2184 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2185 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2187 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2188 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2189 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2191 OutputDeclarator(decl->declarator, f);
2194 OutputDeclarator(decl->declarator, f);
2196 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2198 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2199 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2201 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2202 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2203 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2205 if(decl->__anon1.extended.extended)
2206 OutputExtDecl(decl->__anon1.extended.extended, f);
2209 if(decl->declarator)
2211 OutputDeclarator(decl->declarator, f);
2214 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2216 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2217 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2219 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2220 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2221 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
2223 if(decl->__anon1.array.exp)
2225 ProcessExpressionType(decl->__anon1.array.exp);
2226 ComputeExpression(decl->__anon1.array.exp);
2227 OutputExpression(decl->__anon1.array.exp, f);
2229 else if(decl->__anon1.array.enumClass)
2231 struct Symbol * _class = decl->__anon1.array.enumClass->__anon1.__anon1.symbol;
2233 if(_class && _class->__anon1.registered)
2235 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "%d", (int)__ecereNameSpace__ecere__com__eClass_GetProperty(_class->__anon1.registered, "enumSize"));
2239 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2241 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2242 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2244 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2245 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2246 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
2251 struct TypeName * param;
2253 if(decl->declarator)
2254 OutputDeclarator(decl->declarator, f);
2256 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2258 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2259 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2261 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2262 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2263 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
2265 if(decl->__anon1.function.parameters && (*decl->__anon1.function.parameters).first)
2267 for(param = (*decl->__anon1.function.parameters).first; param; param = param->next)
2269 OutputTypeName(param, f, 0);
2272 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2274 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2275 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2277 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2278 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2279 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
2284 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2286 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2287 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2289 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2290 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2291 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
2296 if(decl->__anon1.pointer.pointer)
2297 OutputPointer(decl->__anon1.pointer.pointer, f);
2298 if(decl->declarator)
2301 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2303 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2304 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2306 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2307 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2308 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2310 OutputDeclarator(decl->declarator, f);
2316 char * StringFromSpecDecl(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * decl)
2319 struct TypeName * typeName = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass_TypeName);
2320 struct __ecereNameSpace__ecere__com__Instance * f = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass___ecereNameSpace__ecere__sys__TempFile);
2323 typeName->qualifiers = specs;
2324 typeName->declarator = decl;
2325 OutputTypeName(typeName, f, 1);
2326 ((typeName ? __extension__ ({
2327 void * __ecerePtrToDelete = (typeName);
2329 __ecereClass_TypeName->Destructor ? __ecereClass_TypeName->Destructor((void *)__ecerePtrToDelete) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(__ecerePtrToDelete);
2330 }) : 0), typeName = 0);
2331 size = (__extension__ ({
2332 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *);
2334 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
2335 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2337 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2338 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_GetSize]);
2339 __internal_VirtualMethod ? __internal_VirtualMethod(f) : (unsigned int)1;
2341 string = __ecereNameSpace__ecere__com__eSystem_New(sizeof(char) * (size + 1));
2343 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode);
2345 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2346 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2348 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2349 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek]);
2350 __internal_VirtualMethod ? __internal_VirtualMethod(f, 0, 0) : (unsigned int)1;
2353 int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count);
2355 __internal_VirtualMethod = ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))__extension__ ({
2356 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2358 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2359 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read]);
2360 __internal_VirtualMethod ? __internal_VirtualMethod(f, string, 1, (unsigned int)size) : (int)1;
2362 string[size] = '\0';
2363 __ecereNameSpace__ecere__sys__TrimRSpaces(string, string);
2364 (__ecereNameSpace__ecere__com__eInstance_DecRef(f), f = 0);
2368 void OutputTypeName(struct TypeName * type, struct __ecereNameSpace__ecere__com__Instance * f, unsigned int typeName)
2370 if(type->qualifiers)
2372 struct Specifier * spec;
2374 for(spec = (*type->qualifiers).first; spec; spec = spec->next)
2376 OutputSpecifier(spec, f, typeName);
2379 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2381 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2382 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2384 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2385 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2386 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2390 if(type->declarator)
2393 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2395 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2396 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2398 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2399 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2400 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2402 OutputDeclarator(type->declarator, f);
2404 if(!type->qualifiers && !type->declarator)
2406 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2408 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2409 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2411 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2412 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2413 __internal_VirtualMethod ? __internal_VirtualMethod(f, "...") : (unsigned int)1;
2417 static void OutputInitDeclarator(struct InitDeclarator * decl, struct __ecereNameSpace__ecere__com__Instance * f)
2419 OutputDeclarator(decl->declarator, f);
2420 if(decl->initializer)
2423 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2425 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2426 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2428 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2429 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2430 __internal_VirtualMethod ? __internal_VirtualMethod(f, " =") : (unsigned int)1;
2432 if(decl->initializer->type == 0)
2434 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2436 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2437 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2439 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2440 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2441 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2443 OutputInitializer(decl->initializer, f);
2447 static void OutputFunction(struct FunctionDefinition * func, struct __ecereNameSpace__ecere__com__Instance * f);
2449 static void OutputClassDef(struct ClassDef * def, struct __ecereNameSpace__ecere__com__Instance * f);
2451 static void OutputSpecifier(struct Specifier * spec, struct __ecereNameSpace__ecere__com__Instance * f, unsigned int typeName)
2456 switch(spec->__anon1.specifier)
2460 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2462 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2463 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2465 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2466 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2467 __internal_VirtualMethod ? __internal_VirtualMethod(f, "typedef") : (unsigned int)1;
2472 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2474 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2475 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2477 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2478 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2479 __internal_VirtualMethod ? __internal_VirtualMethod(f, "extern") : (unsigned int)1;
2484 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2486 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2487 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2489 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2490 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2491 __internal_VirtualMethod ? __internal_VirtualMethod(f, "static") : (unsigned int)1;
2496 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2498 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2499 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2501 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2502 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2503 __internal_VirtualMethod ? __internal_VirtualMethod(f, "auto") : (unsigned int)1;
2508 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2510 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2511 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2513 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2514 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2515 __internal_VirtualMethod ? __internal_VirtualMethod(f, "register") : (unsigned int)1;
2520 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2522 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2523 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2525 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2526 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2527 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__thread") : (unsigned int)1;
2532 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2534 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2535 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2537 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2538 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2539 __internal_VirtualMethod ? __internal_VirtualMethod(f, "const") : (unsigned int)1;
2544 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2546 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2547 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2549 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2550 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2551 __internal_VirtualMethod ? __internal_VirtualMethod(f, "volatile") : (unsigned int)1;
2556 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2558 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2559 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2561 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2562 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2563 __internal_VirtualMethod ? __internal_VirtualMethod(f, "void") : (unsigned int)1;
2568 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2570 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2571 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2573 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2574 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2575 __internal_VirtualMethod ? __internal_VirtualMethod(f, "char") : (unsigned int)1;
2581 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2583 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2584 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2586 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2587 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2588 __internal_VirtualMethod ? __internal_VirtualMethod(f, "_Bool") : (unsigned int)1;
2593 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2595 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2596 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2598 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2599 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2600 __internal_VirtualMethod ? __internal_VirtualMethod(f, "_Complex") : (unsigned int)1;
2605 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2607 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2608 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2610 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2611 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2612 __internal_VirtualMethod ? __internal_VirtualMethod(f, "_Imaginary") : (unsigned int)1;
2617 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2619 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2620 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2622 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2623 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2624 __internal_VirtualMethod ? __internal_VirtualMethod(f, "restrict") : (unsigned int)1;
2629 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2631 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2632 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2634 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2635 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2636 __internal_VirtualMethod ? __internal_VirtualMethod(f, "short") : (unsigned int)1;
2641 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2643 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2644 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2646 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2647 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2648 __internal_VirtualMethod ? __internal_VirtualMethod(f, "int") : (unsigned int)1;
2653 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2655 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2656 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2658 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2659 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2660 __internal_VirtualMethod ? __internal_VirtualMethod(f, typeName ? "uint" : "unsigned int") : (unsigned int)1;
2665 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2667 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2668 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2670 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2671 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2672 __internal_VirtualMethod ? __internal_VirtualMethod(f, typeName ? "int64" : "long long") : (unsigned int)1;
2677 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2679 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2680 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2682 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2683 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2684 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__builtin_va_list") : (unsigned int)1;
2689 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2691 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2692 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2694 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2695 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2696 __internal_VirtualMethod ? __internal_VirtualMethod(f, "long") : (unsigned int)1;
2701 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2703 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2704 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2706 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2707 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2708 __internal_VirtualMethod ? __internal_VirtualMethod(f, "float") : (unsigned int)1;
2713 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2715 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2716 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2718 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2719 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2720 __internal_VirtualMethod ? __internal_VirtualMethod(f, "double") : (unsigned int)1;
2725 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2727 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2728 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2730 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2731 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2732 __internal_VirtualMethod ? __internal_VirtualMethod(f, "signed") : (unsigned int)1;
2737 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2739 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2740 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2742 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2743 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2744 __internal_VirtualMethod ? __internal_VirtualMethod(f, "unsigned") : (unsigned int)1;
2749 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2751 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2752 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2754 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2755 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2756 __internal_VirtualMethod ? __internal_VirtualMethod(f, "typed_object") : (unsigned int)1;
2761 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2763 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2764 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2766 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2767 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2768 __internal_VirtualMethod ? __internal_VirtualMethod(f, "any_object") : (unsigned int)1;
2773 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2775 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2776 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2778 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2779 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2780 __internal_VirtualMethod ? __internal_VirtualMethod(f, "class") : (unsigned int)1;
2785 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2787 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2788 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2790 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2791 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2792 __internal_VirtualMethod ? __internal_VirtualMethod(f, "thisclass") : (unsigned int)1;
2798 if(spec->__anon1.__anon1.extDecl)
2799 OutputExtDecl(spec->__anon1.__anon1.extDecl, f);
2802 if(spec->__anon1.__anon1.name && !strcmp(spec->__anon1.__anon1.name, "class"))
2805 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2807 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2808 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2810 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2811 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2812 __internal_VirtualMethod ? __internal_VirtualMethod(f, "typed_object") : (unsigned int)1;
2817 struct Symbol * symbol = spec->__anon1.__anon1.symbol;
2819 if(!symbol && spec->__anon1.__anon1.name)
2820 symbol = FindClass(spec->__anon1.__anon1.name);
2824 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2826 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2827 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2829 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2830 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2831 __internal_VirtualMethod ? __internal_VirtualMethod(f, symbol->string ? symbol->string : "(null)") : (unsigned int)1;
2834 else if(spec->__anon1.__anon1.name)
2836 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2838 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2839 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2841 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2842 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2843 __internal_VirtualMethod ? __internal_VirtualMethod(f, spec->__anon1.__anon1.name) : (unsigned int)1;
2850 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2852 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2853 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2855 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2856 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2857 __internal_VirtualMethod ? __internal_VirtualMethod(f, "enum") : (unsigned int)1;
2859 if(spec->__anon1.__anon2.id)
2862 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2864 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2865 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2867 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2868 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2869 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2871 OutputIdentifier(spec->__anon1.__anon2.id, f);
2873 if(spec->__anon1.__anon2.list)
2875 struct Enumerator * enumerator;
2878 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2880 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2881 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2883 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2884 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2885 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n{\n") : (unsigned int)1;
2888 for(enumerator = (*spec->__anon1.__anon2.list).first; enumerator; enumerator = enumerator->next)
2890 OutputEnumerator(enumerator, f);
2891 if(enumerator->next)
2893 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2895 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2896 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2898 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2899 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2900 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
2904 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2906 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2907 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2909 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2910 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2911 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n}") : (unsigned int)1;
2921 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2923 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2924 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2926 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2927 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2928 __internal_VirtualMethod ? __internal_VirtualMethod(f, (spec->type == 3) ? "struct" : "union") : (unsigned int)1;
2930 if(spec->__anon1.__anon2.extDeclStruct)
2933 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2935 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2936 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2938 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2939 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2940 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2942 OutputExtDecl(spec->__anon1.__anon2.extDeclStruct, f);
2944 if(spec->__anon1.__anon2.id)
2947 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2949 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2950 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2952 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2953 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2954 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2956 OutputIdentifier(spec->__anon1.__anon2.id, f);
2958 if(spec->__anon1.__anon2.definitions)
2960 struct ClassDef * def;
2963 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2965 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2966 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2968 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2969 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2970 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n{\n") : (unsigned int)1;
2973 for(def = (*spec->__anon1.__anon2.definitions).first; def; def = def->next)
2975 OutputClassDef(def, f);
2978 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2980 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2981 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2983 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2984 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2985 __internal_VirtualMethod ? __internal_VirtualMethod(f, "} ecere_gcc_struct") : (unsigned int)1;
2992 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2994 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2995 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2997 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2998 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2999 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__typeof(") : (unsigned int)1;
3001 OutputExpression(spec->__anon1.expression, f);
3003 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3005 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3006 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3008 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3009 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3010 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
3015 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3017 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3018 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3020 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3021 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3022 __internal_VirtualMethod ? __internal_VirtualMethod(f, "subclass(") : (unsigned int)1;
3024 OutputSpecifier(spec->__anon1._class, f, 0);
3026 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3028 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3029 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3031 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3032 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3033 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
3037 OutputIdentifier(spec->__anon1.templateParameter->identifier, f);
3042 static void OutputClass(struct ClassDefinition * _class, struct __ecereNameSpace__ecere__com__Instance * f)
3045 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3047 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3048 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3050 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3051 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3052 __internal_VirtualMethod ? __internal_VirtualMethod(f, "class ") : (unsigned int)1;
3054 OutputSpecifier(_class->_class, f, 0);
3055 if(_class->baseSpecs)
3057 struct Specifier * spec;
3060 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3062 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3063 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3065 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3066 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3067 __internal_VirtualMethod ? __internal_VirtualMethod(f, " : ") : (unsigned int)1;
3069 for(spec = (*_class->baseSpecs).first; spec; spec = spec->next)
3071 OutputSpecifier(spec, f, 0);
3074 if(_class->definitions)
3076 struct ClassDef * def;
3079 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3081 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3082 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3084 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3085 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3086 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n{\n") : (unsigned int)1;
3089 for(def = (*_class->definitions).first; def; def = def->next)
3091 OutputClassDef(def, f);
3094 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3096 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3097 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3099 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3100 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3101 __internal_VirtualMethod ? __internal_VirtualMethod(f, "}\n") : (unsigned int)1;
3107 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3109 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3110 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3112 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3113 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3114 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
3118 static void OutputMembersInit(struct MembersInit * init, struct __ecereNameSpace__ecere__com__Instance * f);
3120 static void OutputInstance(struct Instantiation * inst, struct __ecereNameSpace__ecere__com__Instance * f)
3123 OutputSpecifier(inst->_class, f, 0);
3127 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3129 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3130 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3132 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3133 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3134 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3136 OutputExpression(inst->exp, f);
3138 if(inst->members && (*inst->members).count > 1)
3141 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3143 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3144 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3146 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3147 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3148 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n{\n") : (unsigned int)1;
3152 else if(inst->members)
3154 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3156 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3157 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3159 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3160 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3161 __internal_VirtualMethod ? __internal_VirtualMethod(f, " { ") : (unsigned int)1;
3165 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3167 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3168 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3170 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3171 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3172 __internal_VirtualMethod ? __internal_VirtualMethod(f, "{") : (unsigned int)1;
3176 struct MembersInit * init;
3178 for(init = (*inst->members).first; init; init = init->next)
3180 OutputMembersInit(init, f);
3181 if(init->type == 0 && init->next)
3184 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3186 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3187 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3189 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3190 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3191 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";\n") : (unsigned int)1;
3199 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3201 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3202 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3204 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3205 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3206 __internal_VirtualMethod ? __internal_VirtualMethod(f, " }") : (unsigned int)1;
3210 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3212 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3213 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3215 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3216 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3217 __internal_VirtualMethod ? __internal_VirtualMethod(f, "}") : (unsigned int)1;
3221 static void OutputDeclaration(struct Declaration * decl, struct __ecereNameSpace__ecere__com__Instance * f)
3223 struct Specifier * spec;
3229 strcpy(origName, outputFile);
3230 __ecereNameSpace__ecere__sys__ChangeCh(origName, '\\', '/');
3232 GetSourceName(name, decl->loc.start.included ? GetIncludeFileFromID(decl->loc.start.included) : (((void *)0)));
3233 if(inCompiler && outputLineNumbers && decl->loc.start.line)
3235 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", decl->loc.start.line, name);
3242 struct InitDeclarator * d;
3244 if(decl->__anon1.__anon1.specifiers)
3246 unsigned int inTypeDef = 0;
3248 for(spec = (*decl->__anon1.__anon1.specifiers).first; spec; spec = spec->next)
3250 if(spec->type == 0 && spec->__anon1.specifier == TYPEDEF)
3252 OutputSpecifier(spec, f, inTypeDef && !spec->next);
3255 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3257 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3258 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3260 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3261 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3262 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3266 if(decl->__anon1.__anon1.declarators && (*decl->__anon1.__anon1.declarators).first)
3269 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3271 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3272 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3274 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3275 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3276 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3278 for(d = (*decl->__anon1.__anon1.declarators).first; d; d = d->next)
3280 OutputInitDeclarator(d, f);
3283 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3285 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3286 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3288 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3289 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3290 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3298 if(decl->__anon1.__anon1.specifiers)
3300 for(spec = (*decl->__anon1.__anon1.specifiers).first; spec; spec = spec->next)
3302 OutputSpecifier(spec, f, 0);
3305 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3307 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3308 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3310 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3311 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3312 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3316 if(decl->__anon1.__anon1.declarators)
3318 struct Declarator * d;
3321 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3323 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3324 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3326 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3327 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3328 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3330 for(d = (*decl->__anon1.__anon1.declarators).first; d; d = d->next)
3332 OutputDeclarator(d, f);
3335 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3337 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3338 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3340 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3341 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3342 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3346 if(decl->extStorage)
3349 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3351 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3352 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3354 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3355 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3356 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3358 OutputSpecifier(decl->extStorage, f, 0);
3363 if(decl->__anon1.inst)
3365 OutputInstance(decl->__anon1.inst, f);
3372 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3374 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3375 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3377 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3378 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3379 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";\n") : (unsigned int)1;
3382 if(inCompiler && outputLineNumbers && decl->loc.start.line)
3384 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", outputLine + 2, origName);
3389 static void OutputStatement(struct Statement * stmt, struct __ecereNameSpace__ecere__com__Instance * f)
3391 char name[274] = "";
3392 char origName[274] = "";
3396 GetSourceName(name, stmt->loc.start.included ? GetIncludeFileFromID(stmt->loc.start.included) : (((void *)0)));
3397 __ecereNameSpace__ecere__sys__PathCat(origName, outputFile);
3398 __ecereNameSpace__ecere__sys__ChangeCh(origName, '\\', '/');
3400 if(inCompiler && outputLineNumbers && stmt->loc.start.line)
3402 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", stmt->loc.start.line, name);
3408 OutputDeclaration(stmt->__anon1.decl, f);
3411 OutputIdentifier(stmt->__anon1.labeled.id, f);
3413 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3415 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3416 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3418 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3419 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3420 __internal_VirtualMethod ? __internal_VirtualMethod(f, ":\n") : (unsigned int)1;
3423 if(stmt->__anon1.labeled.stmt)
3425 if(stmt->__anon1.labeled.stmt->type == 14)
3427 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3429 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3430 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3432 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3433 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3434 __internal_VirtualMethod ? __internal_VirtualMethod(f, "; ") : (unsigned int)1;
3436 OutputStatement(stmt->__anon1.labeled.stmt, f);
3440 if(stmt->__anon1.caseStmt.exp)
3443 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3445 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3446 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3448 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3449 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3450 __internal_VirtualMethod ? __internal_VirtualMethod(f, "case ") : (unsigned int)1;
3452 OutputExpression(stmt->__anon1.caseStmt.exp, f);
3454 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3456 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3457 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3459 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3460 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3461 __internal_VirtualMethod ? __internal_VirtualMethod(f, ":\n") : (unsigned int)1;
3468 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3470 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3471 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3473 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3474 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3475 __internal_VirtualMethod ? __internal_VirtualMethod(f, "default:\n") : (unsigned int)1;
3479 if(stmt->__anon1.caseStmt.stmt)
3481 if(stmt->__anon1.caseStmt.stmt->type == 14)
3483 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3485 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3486 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3488 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3489 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3490 __internal_VirtualMethod ? __internal_VirtualMethod(f, "; ") : (unsigned int)1;
3492 OutputStatement(stmt->__anon1.caseStmt.stmt, f);
3498 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3500 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3501 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3503 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3504 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3505 __internal_VirtualMethod ? __internal_VirtualMethod(f, "{\n") : (unsigned int)1;
3508 if(stmt->__anon1.compound.declarations)
3510 struct Declaration * decl;
3512 for(decl = (*stmt->__anon1.compound.declarations).first; decl; decl = decl->next)
3514 OutputDeclaration(decl, f);
3517 if(stmt->__anon1.compound.statements)
3519 struct Statement * statement;
3521 if(stmt->__anon1.compound.declarations)
3524 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3526 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3527 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3529 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3530 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3531 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
3535 for(statement = (*stmt->__anon1.compound.statements).first; statement; statement = statement->next)
3537 OutputStatement(statement, f);
3539 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3541 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3542 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3544 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3545 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3546 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
3551 if(inCompiler && outputLineNumbers && stmt->loc.end.line)
3553 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", stmt->loc.end.line, name);
3557 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3559 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3560 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3562 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3563 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3564 __internal_VirtualMethod ? __internal_VirtualMethod(f, "}") : (unsigned int)1;
3570 if(stmt->__anon1.expressions)
3572 struct Expression * exp;
3574 for(exp = (*stmt->__anon1.expressions).first; exp; exp = exp->next)
3576 OutputExpression(exp, f);
3579 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3581 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3582 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3584 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3585 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3586 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3591 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3593 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3594 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3596 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3597 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3598 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
3604 struct Expression * exp;
3607 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3609 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3610 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3612 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3613 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3614 __internal_VirtualMethod ? __internal_VirtualMethod(f, "if(") : (unsigned int)1;
3616 for(exp = (*stmt->__anon1.ifStmt.exp).first; exp; exp = exp->next)
3618 OutputExpression(exp, f);
3621 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3623 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3624 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3626 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3627 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3628 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3632 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3634 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3635 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3637 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3638 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3639 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")\n") : (unsigned int)1;
3642 if(stmt->__anon1.ifStmt.stmt)
3643 OutputStatement(stmt->__anon1.ifStmt.stmt, f);
3644 if(stmt->__anon1.ifStmt.elseStmt)
3647 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3649 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3650 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3652 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3653 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3654 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
3658 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3660 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3661 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3663 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3664 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3665 __internal_VirtualMethod ? __internal_VirtualMethod(f, "else") : (unsigned int)1;
3667 if(stmt->__anon1.ifStmt.elseStmt->type != 4)
3670 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3672 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3673 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3675 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3676 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3677 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
3683 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3685 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3686 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3688 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3689 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3690 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3692 OutputStatement(stmt->__anon1.ifStmt.elseStmt, f);
3698 struct Expression * exp;
3701 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3703 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3704 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3706 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3707 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3708 __internal_VirtualMethod ? __internal_VirtualMethod(f, "switch(") : (unsigned int)1;
3710 if(stmt->__anon1.switchStmt.exp)
3712 for(exp = (*stmt->__anon1.switchStmt.exp).first; exp; exp = exp->next)
3714 OutputExpression(exp, f);
3717 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3719 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3720 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3722 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3723 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3724 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3729 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3731 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3732 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3734 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3735 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3736 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")\n") : (unsigned int)1;
3739 OutputStatement(stmt->__anon1.switchStmt.stmt, f);
3744 struct Expression * exp;
3747 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3749 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3750 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3752 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3753 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3754 __internal_VirtualMethod ? __internal_VirtualMethod(f, "while(") : (unsigned int)1;
3756 if(stmt->__anon1.switchStmt.exp)
3758 for(exp = (*stmt->__anon1.switchStmt.exp).first; exp; exp = exp->next)
3760 OutputExpression(exp, f);
3763 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3765 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3766 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3768 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3769 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3770 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3775 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3777 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3778 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3780 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3781 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3782 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")\n") : (unsigned int)1;
3785 OutputStatement(stmt->__anon1.whileStmt.stmt, f);
3790 struct Expression * exp;
3793 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3795 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3796 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3798 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3799 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3800 __internal_VirtualMethod ? __internal_VirtualMethod(f, "do\n") : (unsigned int)1;
3803 OutputStatement(stmt->__anon1.whileStmt.stmt, f);
3805 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3807 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3808 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3810 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3811 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3812 __internal_VirtualMethod ? __internal_VirtualMethod(f, "while(") : (unsigned int)1;
3814 for(exp = (*stmt->__anon1.switchStmt.exp).first; exp; exp = exp->next)
3816 OutputExpression(exp, f);
3819 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3821 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3822 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3824 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3825 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3826 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3830 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3832 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3833 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3835 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3836 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3837 __internal_VirtualMethod ? __internal_VirtualMethod(f, ");") : (unsigned int)1;
3843 struct Expression * exp;
3846 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3848 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3849 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3851 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3852 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3853 __internal_VirtualMethod ? __internal_VirtualMethod(f, "for(") : (unsigned int)1;
3855 OutputStatement(stmt->__anon1.forStmt.init, f);
3857 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3859 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3860 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3862 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3863 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3864 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3866 OutputStatement(stmt->__anon1.forStmt.check, f);
3868 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3870 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3871 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3873 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3874 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3875 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3877 if(stmt->__anon1.forStmt.increment)
3879 if(inCompiler && outputLineNumbers && stmt->loc.end.line)
3881 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", stmt->loc.end.line, name);
3884 for(exp = (*stmt->__anon1.forStmt.increment).first; exp; exp = exp->next)
3886 OutputExpression(exp, f);
3889 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3891 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3892 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3894 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3895 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3896 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3901 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3903 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3904 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3906 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3907 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3908 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")\n") : (unsigned int)1;
3911 OutputStatement(stmt->__anon1.forStmt.stmt, f);
3917 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3919 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3920 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3922 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3923 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3924 __internal_VirtualMethod ? __internal_VirtualMethod(f, "goto ") : (unsigned int)1;
3926 OutputIdentifier(stmt->__anon1.gotoStmt.id, f);
3928 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3930 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3931 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3933 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3934 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3935 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
3941 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3943 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3944 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3946 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3947 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3948 __internal_VirtualMethod ? __internal_VirtualMethod(f, "continue;") : (unsigned int)1;
3953 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3955 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3956 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3958 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3959 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3960 __internal_VirtualMethod ? __internal_VirtualMethod(f, "break;") : (unsigned int)1;
3965 struct Expression * exp;
3967 if(inCompiler && memoryGuard)
3969 struct Expression * exp = stmt->__anon1.expressions ? (*stmt->__anon1.expressions).last : (((void *)0));
3970 struct Type * returnType = exp ? (exp->destType ? exp->destType : exp->expType) : (((void *)0));
3972 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "{ ");
3973 if(returnType && returnType->kind != 0)
3975 char string[1024] = "";
3976 struct __ecereNameSpace__ecere__sys__OldList * specs = MkList();
3977 struct Declarator * decl;
3978 struct TypeName * typeName;
3980 if(returnType->kind == 20)
3982 if(returnType->__anon1.templateParameter->dataTypeString)
3983 decl = SpecDeclFromString(returnType->__anon1.templateParameter->dataTypeString, specs, MkDeclaratorIdentifier(MkIdentifier("__ecereReturnVal")));
3984 else if(returnType->__anon1.templateParameter->__anon1.dataType)
3986 (__ecereNameSpace__ecere__com__eSystem_Delete(specs), specs = 0);
3987 specs = CopyList(returnType->__anon1.templateParameter->__anon1.dataType->specifiers, (void *)(CopySpecifier));
3988 decl = PlugDeclarator(returnType->__anon1.templateParameter->__anon1.dataType->decl, MkDeclaratorIdentifier(MkIdentifier("__ecereReturnVal")));
3992 ListAdd(specs, MkSpecifierName("uint64"));
3993 decl = MkDeclaratorIdentifier(MkIdentifier("__ecereReturnVal"));
3998 if(returnType->passAsTemplate)
3999 strcpy(string, "uint64");
4001 PrintType(returnType, string, returnType->kind == 18 ? 1 : 0, 1);
4002 decl = SpecDeclFromString(string, specs, MkDeclaratorIdentifier(MkIdentifier("__ecereReturnVal")));
4004 typeName = MkTypeName(specs, decl);
4005 InstDeclPassTypeName(typeName, 0);
4006 OutputTypeName(typeName, f, 0);
4007 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, ";");
4008 FreeTypeName(typeName);
4013 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4015 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4016 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4018 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4019 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4020 __internal_VirtualMethod ? __internal_VirtualMethod(f, "return ") : (unsigned int)1;
4024 struct Expression * exp = stmt->__anon1.expressions ? (*stmt->__anon1.expressions).last : (((void *)0));
4026 if(exp && exp->expType && exp->expType->kind != 0)
4027 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "__ecereReturnVal = ");
4029 if(stmt->__anon1.expressions)
4031 for(exp = (*stmt->__anon1.expressions).first; exp; exp = exp->next)
4033 OutputExpression(exp, f);
4036 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4038 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4039 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4041 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4042 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4043 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4048 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4050 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4051 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4053 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4054 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4055 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
4057 if(inCompiler && memoryGuard)
4059 struct Expression * exp = stmt->__anon1.expressions ? (struct Expression *)(*stmt->__anon1.expressions).last : (((void *)0));
4061 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, " __ecereNameSpace__ecere__com__MemoryGuard_PopLoc();");
4062 if(exp && exp->expType && exp->expType->kind != 0)
4063 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "return __ecereReturnVal;");
4065 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "return;");
4066 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "}");
4072 struct AsmField * field;
4075 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4077 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4078 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4080 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4081 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4082 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__asm__ ") : (unsigned int)1;
4084 if(stmt->__anon1.asmStmt.spec)
4085 OutputSpecifier(stmt->__anon1.asmStmt.spec, f, 0);
4087 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4089 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4090 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4092 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4093 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4094 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
4097 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4099 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4100 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4102 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4103 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4104 __internal_VirtualMethod ? __internal_VirtualMethod(f, stmt->__anon1.asmStmt.statements) : (unsigned int)1;
4106 if(stmt->__anon1.asmStmt.inputFields || stmt->__anon1.asmStmt.outputFields || stmt->__anon1.asmStmt.clobberedFields)
4109 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4111 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4112 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4114 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4115 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4116 __internal_VirtualMethod ? __internal_VirtualMethod(f, ":") : (unsigned int)1;
4118 if(stmt->__anon1.asmStmt.inputFields)
4120 for(field = (*stmt->__anon1.asmStmt.inputFields).first; field; field = field->next)
4124 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4126 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4127 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4129 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4130 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4131 __internal_VirtualMethod ? __internal_VirtualMethod(f, ",") : (unsigned int)1;
4133 OutputAsmField(field, f);
4137 if(stmt->__anon1.asmStmt.outputFields || stmt->__anon1.asmStmt.clobberedFields)
4140 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4142 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4143 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4145 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4146 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4147 __internal_VirtualMethod ? __internal_VirtualMethod(f, ":") : (unsigned int)1;
4149 if(stmt->__anon1.asmStmt.outputFields)
4151 for(field = (*stmt->__anon1.asmStmt.outputFields).first; field; field = field->next)
4155 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4157 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4158 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4160 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4161 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4162 __internal_VirtualMethod ? __internal_VirtualMethod(f, ",") : (unsigned int)1;
4164 OutputAsmField(field, f);
4168 if(stmt->__anon1.asmStmt.clobberedFields)
4171 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4173 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4174 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4176 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4177 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4178 __internal_VirtualMethod ? __internal_VirtualMethod(f, ":") : (unsigned int)1;
4180 for(field = (*stmt->__anon1.asmStmt.clobberedFields).first; field; field = field->next)
4184 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4186 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4187 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4189 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4190 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4191 __internal_VirtualMethod ? __internal_VirtualMethod(f, ",") : (unsigned int)1;
4193 OutputAsmField(field, f);
4197 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4199 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4200 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4202 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4203 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4204 __internal_VirtualMethod ? __internal_VirtualMethod(f, ");\n") : (unsigned int)1;
4210 if(inCompiler && outputLineNumbers && stmt->loc.start.line)
4212 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", outputLine + 2, origName);
4217 void OutputTree(struct __ecereNameSpace__ecere__sys__OldList * ast, struct __ecereNameSpace__ecere__com__Instance * f)
4219 struct External * external;
4222 for(external = ast->first; external; external = external->next)
4224 switch(external->type)
4227 OutputFunction(external->__anon1.function, f);
4229 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4231 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4232 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4234 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4235 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4236 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4241 if(external->__anon1.declaration)
4242 OutputDeclaration(external->__anon1.declaration, f);
4244 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4246 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4247 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4249 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4250 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4251 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4256 OutputClass(external->__anon1._class, f);
4258 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4260 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4261 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4263 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4264 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4265 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4273 void OutputExternal(struct External * external, struct __ecereNameSpace__ecere__com__Instance * f)
4275 switch(external->type)
4278 OutputFunction(external->__anon1.function, f);
4280 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4282 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4283 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4285 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4286 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4287 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4292 if(external->__anon1.declaration)
4293 OutputDeclaration(external->__anon1.declaration, f);
4295 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4297 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4298 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4300 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4301 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4302 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4307 OutputClass(external->__anon1._class, f);
4309 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4311 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4312 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4314 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4315 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4316 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4323 void OutputExpression(struct Expression * exp, struct __ecereNameSpace__ecere__com__Instance * f)
4329 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4331 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4332 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4334 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4335 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4336 __internal_VirtualMethod ? __internal_VirtualMethod(f, "class(") : (unsigned int)1;
4338 if(exp->__anon1._classExp.specifiers)
4340 struct Specifier * spec;
4342 for(spec = (*exp->__anon1._classExp.specifiers).first; spec; spec = spec->next)
4344 OutputSpecifier(spec, f, 0);
4347 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4349 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4350 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4352 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4353 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4354 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4357 if(exp->__anon1._classExp.decl)
4360 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4362 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4363 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4365 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4366 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4367 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4369 OutputDeclarator(exp->__anon1._classExp.decl, f);
4372 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4374 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4375 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4377 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4378 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4379 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4385 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4387 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4388 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4390 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4391 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4392 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__extension__ (") : (unsigned int)1;
4394 OutputStatement(exp->__anon1.compound, f);
4396 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4398 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4399 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4401 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4402 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4403 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4405 if(inCompiler && outputLineNumbers && exp->loc.end.line)
4407 char name[274] = "";
4409 GetSourceName(name, exp->loc.end.included ? GetIncludeFileFromID(exp->loc.end.included) : (((void *)0)));
4410 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", exp->loc.end.line, name);
4416 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4418 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4419 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4421 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4422 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4423 __internal_VirtualMethod ? __internal_VirtualMethod(f, "new ") : (unsigned int)1;
4426 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4428 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4429 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4431 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4432 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4433 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4435 OutputTypeName(exp->__anon1._renew.typeName, f, 0);
4437 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4439 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4440 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4442 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4443 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4444 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4446 OutputExpression(exp->__anon1._renew.size, f);
4448 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4450 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4451 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4453 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4454 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4455 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4460 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4462 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4463 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4465 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4466 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4467 __internal_VirtualMethod ? __internal_VirtualMethod(f, "new0 ") : (unsigned int)1;
4470 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4472 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4473 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4475 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4476 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4477 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4479 OutputTypeName(exp->__anon1._renew.typeName, f, 0);
4481 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4483 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4484 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4486 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4487 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4488 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4490 OutputExpression(exp->__anon1._renew.size, f);
4492 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4494 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4495 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4497 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4498 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4499 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4504 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4506 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4507 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4509 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4510 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4511 __internal_VirtualMethod ? __internal_VirtualMethod(f, "renew ") : (unsigned int)1;
4513 OutputExpression(exp->__anon1._renew.exp, f);
4515 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4517 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4518 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4520 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4521 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4522 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4524 OutputTypeName(exp->__anon1._renew.typeName, f, 0);
4526 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4528 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4529 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4531 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4532 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4533 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4535 OutputExpression(exp->__anon1._renew.size, f);
4537 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4539 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4540 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4542 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4543 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4544 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4549 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4551 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4552 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4554 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4555 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4556 __internal_VirtualMethod ? __internal_VirtualMethod(f, "renew0 ") : (unsigned int)1;
4558 OutputExpression(exp->__anon1._renew.exp, f);
4560 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4562 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4563 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4565 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4566 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4567 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4569 OutputTypeName(exp->__anon1._renew.typeName, f, 0);
4571 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4573 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4574 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4576 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4577 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4578 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4580 OutputExpression(exp->__anon1._renew.size, f);
4582 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4584 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4585 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4587 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4588 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4589 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4593 if(exp->__anon1.__anon1.identifier)
4594 OutputIdentifier(exp->__anon1.__anon1.identifier, f);
4597 if(exp->__anon1.instance)
4598 OutputInstance(exp->__anon1.instance, f);
4601 if(exp->__anon1.__anon1.constant)
4603 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4605 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4606 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4608 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4609 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4610 __internal_VirtualMethod ? __internal_VirtualMethod(f, exp->__anon1.__anon1.constant) : (unsigned int)1;
4614 if(exp->__anon1.__anon2.string)
4616 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4618 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4619 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4621 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4622 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4623 __internal_VirtualMethod ? __internal_VirtualMethod(f, exp->__anon1.__anon2.string) : (unsigned int)1;
4627 if(exp->__anon1.op.exp1)
4629 OutputExpression(exp->__anon1.op.exp1, f);
4630 if(exp->__anon1.op.exp2)
4632 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4634 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4635 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4637 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4638 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4639 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4642 OutputOperator(exp->__anon1.op.op, f);
4643 if(exp->__anon1.op.exp2)
4645 if(exp->__anon1.op.exp1 || (exp->__anon1.op.exp2->type == 4 && !exp->__anon1.op.exp2->__anon1.op.exp1 && exp->__anon1.op.exp2->__anon1.op.op == exp->__anon1.op.op))
4647 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4649 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4650 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4652 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4653 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4654 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4656 OutputExpression(exp->__anon1.op.exp2, f);
4662 struct Expression * expression;
4666 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4668 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4669 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4671 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4672 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4673 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__extension__ ") : (unsigned int)1;
4676 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4678 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4679 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4681 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4682 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4683 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
4685 if(exp->__anon1.list)
4687 for(expression = (*exp->__anon1.list).first; expression; expression = expression->next)
4689 OutputExpression(expression, f);
4690 if(expression->next)
4692 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4694 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4695 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4697 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4698 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4699 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4704 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4706 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4707 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4709 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4710 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4711 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4717 struct Expression * expression;
4719 if(exp->__anon1.index.exp)
4720 OutputExpression(exp->__anon1.index.exp, f);
4722 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4724 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4725 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4727 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4728 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4729 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4731 if(exp->__anon1.index.index)
4732 for(expression = (*exp->__anon1.index.index).first; expression; expression = expression->next)
4734 OutputExpression(expression, f);
4735 if(expression->next)
4737 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4739 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4740 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4742 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4743 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4744 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4748 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4750 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4751 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4753 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4754 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4755 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4761 OutputExpression(exp->__anon1.call.exp, f);
4763 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4765 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4766 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4768 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4769 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4770 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
4772 if(exp->__anon1.call.arguments)
4774 struct Expression * expression;
4776 for(expression = (*exp->__anon1.call.arguments).first; expression; expression = expression->next)
4778 OutputExpression(expression, f);
4779 if(expression->next)
4781 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4783 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4784 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4786 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4787 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4788 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4793 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4795 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4796 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4798 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4799 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4800 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4805 if(exp->__anon1.member.exp)
4806 OutputExpression(exp->__anon1.member.exp, f);
4808 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4810 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4811 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4813 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4814 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4815 __internal_VirtualMethod ? __internal_VirtualMethod(f, ".") : (unsigned int)1;
4817 if(exp->__anon1.member.member)
4818 OutputIdentifier(exp->__anon1.member.member, f);
4821 OutputExpression(exp->__anon1.member.exp, f);
4823 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4825 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4826 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4828 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4829 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4830 __internal_VirtualMethod ? __internal_VirtualMethod(f, "->") : (unsigned int)1;
4832 OutputIdentifier(exp->__anon1.member.member, f);
4836 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4838 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4839 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4841 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4842 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4843 __internal_VirtualMethod ? __internal_VirtualMethod(f, "sizeof(") : (unsigned int)1;
4845 OutputTypeName(exp->__anon1.typeName, f, 0);
4847 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4849 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4850 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4852 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4853 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4854 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4859 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4861 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4862 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4864 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4865 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4866 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__alignof__(") : (unsigned int)1;
4868 OutputTypeName(exp->__anon1.typeName, f, 0);
4870 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4872 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4873 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4875 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4876 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4877 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4882 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4884 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4885 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4887 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4888 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4889 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__builtin_offsetof(") : (unsigned int)1;
4891 if(exp->__anon1.typeName)
4892 OutputTypeName(exp->__anon1.typeName, f, 0);
4894 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4896 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4897 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4899 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4900 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4901 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4903 if(exp->__anon1.__anon1.identifier)
4904 OutputIdentifier(exp->__anon1.__anon1.identifier, f);
4906 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4908 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4909 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4911 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4912 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4913 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4918 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4920 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4921 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4923 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4924 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4925 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__extension__ (") : (unsigned int)1;
4927 if(exp->__anon1.initializer.typeName)
4928 OutputTypeName(exp->__anon1.initializer.typeName, f, 0);
4930 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4932 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4933 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4935 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4936 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4937 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4939 if(exp->__anon1.initializer.initializer)
4940 OutputInitializer(exp->__anon1.initializer.initializer, f);
4944 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4946 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4947 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4949 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4950 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4951 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
4953 OutputTypeName(exp->__anon1.cast.typeName, f, 0);
4955 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4957 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4958 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4960 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4961 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4962 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4964 if(exp->__anon1.cast.exp)
4965 OutputExpression(exp->__anon1.cast.exp, f);
4968 OutputExpression(exp->__anon1.cond.cond, f);
4970 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4972 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4973 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4975 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4976 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4977 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ? ") : (unsigned int)1;
4980 struct Expression * expression;
4982 for(expression = (*exp->__anon1.cond.exp).first; expression; expression = expression->next)
4984 OutputExpression(expression, f);
4985 if(expression->next)
4987 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4989 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4990 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4992 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4993 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4994 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4999 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5001 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5002 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5004 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5005 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5006 __internal_VirtualMethod ? __internal_VirtualMethod(f, " : ") : (unsigned int)1;
5008 if(exp->__anon1.cond.elseExp)
5009 OutputExpression(exp->__anon1.cond.elseExp, f);
5013 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5015 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5016 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5018 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5019 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5020 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__builtin_va_arg(") : (unsigned int)1;
5022 OutputExpression(exp->__anon1.vaArg.exp, f);
5024 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5026 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5027 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5029 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5030 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5031 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
5033 OutputTypeName(exp->__anon1.vaArg.typeName, f, 0);
5035 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5037 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5038 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5040 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5041 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5042 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
5047 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5049 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5050 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5052 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5053 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5054 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
5056 if(exp->__anon1.list)
5058 struct Expression * expression;
5060 for(expression = (*exp->__anon1.list).first; expression; expression = expression->next)
5062 OutputExpression(expression, f);
5063 if(expression->next)
5065 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5067 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5068 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5070 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5071 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5072 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
5077 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5079 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5080 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5082 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5083 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5084 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
5090 static void OutputFunction(struct FunctionDefinition * func, struct __ecereNameSpace__ecere__com__Instance * f)
5092 struct FunctionDefinition * oldFunc = curFunction;
5095 if(func->specifiers)
5097 struct Specifier * spec;
5099 for(spec = (*func->specifiers).first; spec; spec = spec->next)
5101 OutputSpecifier(spec, f, 0);
5104 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5106 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5107 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5109 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5110 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5111 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
5115 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5117 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5118 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5120 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5121 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5122 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
5125 if(func->declarator)
5126 OutputDeclarator(func->declarator, f);
5128 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5130 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5131 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5133 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5134 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5135 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5138 if(func->declarations)
5140 struct Declaration * decl;
5142 for(decl = (*func->declarations).first; decl; decl = decl->next)
5144 OutputDeclaration(decl, f);
5147 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5149 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5150 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5152 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5153 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5154 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5160 if(inCompiler && memoryGuard)
5162 char name[1024] = "";
5163 struct Identifier * id = GetDeclId(func->declarator);
5165 GetSourceName(name, func->loc.start.included ? GetIncludeFileFromID(func->loc.start.included) : (((void *)0)));
5166 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "{\n");
5167 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, " __ecereNameSpace__ecere__com__MemoryGuard_PushLoc(\"%s:%s\");\n", name, id->string);
5170 OutputStatement(func->body, f);
5171 if(inCompiler && memoryGuard)
5173 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, " __ecereNameSpace__ecere__com__MemoryGuard_PopLoc();\n");
5174 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "}\n");
5178 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5180 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5181 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5183 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5184 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5185 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5189 curFunction = oldFunc;
5192 static void OutputClassFunction(struct ClassFunction * func, struct __ecereNameSpace__ecere__com__Instance * f)
5194 if(func->specifiers)
5196 struct Specifier * spec;
5198 for(spec = (*func->specifiers).first; spec; spec = spec->next)
5200 OutputSpecifier(spec, f, 0);
5203 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5205 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5206 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5208 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5209 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5210 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
5214 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5216 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5217 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5219 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5220 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5221 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
5224 if(func->declarator)
5225 OutputDeclarator(func->declarator, f);
5227 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5229 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5230 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5232 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5233 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5234 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5237 if(func->declarations)
5239 struct Declaration * decl;
5241 for(decl = (*func->declarations).first; decl; decl = decl->next)
5243 OutputDeclaration(decl, f);
5246 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5248 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5249 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5251 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5252 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5253 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5259 OutputStatement(func->body, f);
5261 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5263 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5264 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5266 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5267 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5268 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5274 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5276 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5277 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5279 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5280 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5281 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
5285 void __ecereRegisterModule_output(struct __ecereNameSpace__ecere__com__Instance * module)
5287 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
5289 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("SetMemoryGuard", "void SetMemoryGuard(bool b)", SetMemoryGuard, module, 1);
5290 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("GetMemoryGuard", "bool GetMemoryGuard(void)", GetMemoryGuard, module, 1);
5291 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("OutputTypeName", "void OutputTypeName(TypeName type, ecere::sys::File f, bool typeName)", OutputTypeName, module, 1);
5292 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("OutputExpression", "void OutputExpression(Expression exp, ecere::sys::File f)", OutputExpression, module, 1);
5293 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("OutputTree", "void OutputTree(ecere::sys::OldList ast, ecere::sys::File f)", OutputTree, module, 1);
5294 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("OutputExternal", "void OutputExternal(External external, ecere::sys::File f)", OutputExternal, module, 1);
5295 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("StringFromSpecDecl", "char * StringFromSpecDecl(ecere::sys::OldList specs, Declarator decl)", StringFromSpecDecl, module, 1);
5298 static void OutputMembersInit(struct MembersInit * init, struct __ecereNameSpace__ecere__com__Instance * f)
5304 struct MemberInit * member;
5306 if(init->__anon1.dataMembers)
5308 for(member = (*init->__anon1.dataMembers).first; member; member = member->next)
5310 OutputMemberInit(member, f);
5313 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5315 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5316 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5318 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5319 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5320 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
5327 OutputClassFunction(init->__anon1.function, f);
5332 static void OutputClassDef(struct ClassDef * def, struct __ecereNameSpace__ecere__com__Instance * f)
5337 if(def->__anon1.decl)
5339 OutputDeclaration(def->__anon1.decl, f);
5340 if(def->next && def->next->type != 2)
5343 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5345 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5346 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5348 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5349 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5350 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5358 struct MemberInit * init;
5360 for(init = (*def->__anon1.defProperties).first; init; init = init->next)
5362 OutputMemberInit(init, f);
5365 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5367 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5368 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5370 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5371 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5372 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
5376 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5378 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5379 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5381 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5382 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5383 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";\n\n") : (unsigned int)1;
5389 OutputClassFunction(def->__anon1.function, f);
5391 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5393 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5394 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5396 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5397 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5398 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;