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, INT128 = 294, LONG = 295, SIGNED = 296, UNSIGNED = 297, FLOAT = 298, DOUBLE = 299, CONST = 300, VOLATILE = 301, VOID = 302, VALIST = 303, STRUCT = 304, UNION = 305, ENUM = 306, ELLIPSIS = 307, CASE = 308, DEFAULT = 309, IF = 310, SWITCH = 311, WHILE = 312, DO = 313, FOR = 314, GOTO = 315, CONTINUE = 316, BREAK = 317, RETURN = 318, IFX = 319, ELSE = 320, CLASS = 321, THISCLASS = 322, CLASS_NAME = 323, PROPERTY = 324, SETPROP = 325, GETPROP = 326, NEWOP = 327, RENEW = 328, DELETE = 329, EXT_DECL = 330, EXT_STORAGE = 331, IMPORT = 332, DEFINE = 333, VIRTUAL = 334, ATTRIB = 335, PUBLIC = 336, PRIVATE = 337, TYPED_OBJECT = 338, ANY_OBJECT = 339, _INCREF = 340, EXTENSION = 341, ASM = 342, TYPEOF = 343, WATCH = 344, STOPWATCHING = 345, FIREWATCHERS = 346, WATCHABLE = 347, CLASS_DESIGNER = 348, CLASS_NO_EXPANSION = 349, CLASS_FIXED = 350, ISPROPSET = 351, CLASS_DEFAULT_PROPERTY = 352, PROPERTY_CATEGORY = 353, CLASS_DATA = 354, CLASS_PROPERTY = 355, SUBCLASS = 356, NAMESPACE = 357, NEW0OP = 358, RENEW0 = 359, VAARG = 360, DBTABLE = 361, DBFIELD = 362, DBINDEX = 363, DATABASE_OPEN = 364, ALIGNOF = 365, ATTRIB_DEP = 366, __ATTRIB = 367, BOOL = 368, _BOOL = 369, _COMPLEX = 370, _IMAGINARY = 371, RESTRICT = 372, THREAD = 373, WIDE_STRING_LITERAL = 374, BUILTIN_OFFSETOF = 375
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);
268 extern struct Identifier * MkIdentifier(const char * string);
272 extern struct Specifier * CopySpecifier(struct Specifier * spec);
274 extern struct Specifier * MkSpecifierName(const char * name);
278 extern struct Declarator * SpecDeclFromString(const char * string, struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * baseDecl);
280 extern struct Declarator * MkDeclaratorIdentifier(struct Identifier * id);
282 struct TemplateDatatype
284 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
285 struct Declarator * decl;
288 extern struct Declarator * PlugDeclarator(struct Declarator * decl, struct Declarator * baseDecl);
290 extern struct Identifier * GetDeclId(struct Declarator * decl);
294 extern void PrintType(struct Type * type, char * string, unsigned int printName, unsigned int fullName);
300 struct TypeName * prev;
301 struct TypeName * next;
303 struct __ecereNameSpace__ecere__sys__OldList * qualifiers;
304 struct Declarator * declarator;
306 struct Expression * bitCount;
309 extern struct TypeName * MkTypeName(struct __ecereNameSpace__ecere__sys__OldList * qualifiers, struct Declarator * declarator);
311 extern void InstDeclPassTypeName(struct TypeName * type, unsigned int param);
313 extern void FreeTypeName(struct TypeName * typeName);
319 struct Identifier * prev;
320 struct Identifier * next;
322 struct Symbol * classSym;
323 struct Specifier * _class;
325 struct Identifier * badID;
328 extern struct Symbol * FindClass(const char * name);
330 struct __ecereNameSpace__ecere__sys__BinaryTree;
332 struct __ecereNameSpace__ecere__sys__BinaryTree
334 struct __ecereNameSpace__ecere__sys__BTNode * root;
336 int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
337 void (* FreeKey)(void * key);
344 struct Pointer * prev;
345 struct Pointer * next;
347 struct __ecereNameSpace__ecere__sys__OldList * qualifiers;
348 struct Pointer * pointer;
353 struct Declarator * prev;
354 struct Declarator * next;
357 struct Symbol * symbol;
358 struct Declarator * declarator;
361 struct Identifier * identifier;
364 struct Expression * exp;
365 struct Expression * posExp;
366 struct Attrib * attrib;
367 } ecere_gcc_struct structDecl;
370 struct Expression * exp;
371 struct Specifier * enumClass;
372 } ecere_gcc_struct array;
375 struct __ecereNameSpace__ecere__sys__OldList * parameters;
376 } ecere_gcc_struct function;
379 struct Pointer * pointer;
380 } ecere_gcc_struct pointer;
383 struct ExtDecl * extended;
384 } ecere_gcc_struct extended;
385 } ecere_gcc_struct __anon1;
396 struct Attribute * prev;
397 struct Attribute * next;
400 struct Expression * exp;
403 struct __ecereNameSpace__ecere__com__DataMember;
405 struct __ecereNameSpace__ecere__com__DataMember
407 struct __ecereNameSpace__ecere__com__DataMember * prev;
408 struct __ecereNameSpace__ecere__com__DataMember * next;
410 unsigned int isProperty;
413 struct __ecereNameSpace__ecere__com__Class * _class;
414 const char * dataTypeString;
415 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
416 struct Type * dataType;
420 struct __ecereNameSpace__ecere__sys__OldList members;
421 struct __ecereNameSpace__ecere__sys__BinaryTree membersAlpha;
423 short structAlignment;
424 short pointerAlignment;
427 struct __ecereNameSpace__ecere__com__Property;
429 struct __ecereNameSpace__ecere__com__Property
431 struct __ecereNameSpace__ecere__com__Property * prev;
432 struct __ecereNameSpace__ecere__com__Property * next;
434 unsigned int isProperty;
437 struct __ecereNameSpace__ecere__com__Class * _class;
438 const char * dataTypeString;
439 struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
440 struct Type * dataType;
441 void (* Set)(void * , int);
442 int (* Get)(void * );
443 unsigned int (* IsSet)(void * );
447 unsigned int conversion;
448 unsigned int watcherOffset;
449 const char * category;
450 unsigned int compiled;
451 unsigned int selfWatchable;
452 unsigned int isWatchable;
455 extern void __ecereNameSpace__ecere__com__eInstance_FireSelfWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
457 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);
459 extern void __ecereNameSpace__ecere__com__eInstance_Watch(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void * , void * ));
461 extern void __ecereNameSpace__ecere__com__eInstance_FireWatchers(struct __ecereNameSpace__ecere__com__Instance * instance, struct __ecereNameSpace__ecere__com__Property * _property);
463 struct __ecereNameSpace__ecere__com__Module;
465 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);
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;
703 unsigned int isVector : 1;
710 struct Statement * prev;
711 struct Statement * next;
716 struct __ecereNameSpace__ecere__sys__OldList * expressions;
719 struct Identifier * id;
720 struct Statement * stmt;
721 } ecere_gcc_struct labeled;
724 struct Expression * exp;
725 struct Statement * stmt;
726 } ecere_gcc_struct caseStmt;
729 struct __ecereNameSpace__ecere__sys__OldList * declarations;
730 struct __ecereNameSpace__ecere__sys__OldList * statements;
731 struct Context * context;
732 unsigned int isSwitch;
733 } ecere_gcc_struct compound;
736 struct __ecereNameSpace__ecere__sys__OldList * exp;
737 struct Statement * stmt;
738 struct Statement * elseStmt;
739 } ecere_gcc_struct ifStmt;
742 struct __ecereNameSpace__ecere__sys__OldList * exp;
743 struct Statement * stmt;
744 } ecere_gcc_struct switchStmt;
747 struct __ecereNameSpace__ecere__sys__OldList * exp;
748 struct Statement * stmt;
749 } ecere_gcc_struct whileStmt;
752 struct __ecereNameSpace__ecere__sys__OldList * exp;
753 struct Statement * stmt;
754 } ecere_gcc_struct doWhile;
757 struct Statement * init;
758 struct Statement * check;
759 struct __ecereNameSpace__ecere__sys__OldList * increment;
760 struct Statement * stmt;
761 } ecere_gcc_struct forStmt;
764 struct Identifier * id;
765 } ecere_gcc_struct gotoStmt;
768 struct Specifier * spec;
770 struct __ecereNameSpace__ecere__sys__OldList * inputFields;
771 struct __ecereNameSpace__ecere__sys__OldList * outputFields;
772 struct __ecereNameSpace__ecere__sys__OldList * clobberedFields;
773 } ecere_gcc_struct asmStmt;
776 struct Expression * watcher;
777 struct Expression * object;
778 struct __ecereNameSpace__ecere__sys__OldList * watches;
779 } ecere_gcc_struct _watch;
782 struct Identifier * id;
783 struct __ecereNameSpace__ecere__sys__OldList * exp;
784 struct __ecereNameSpace__ecere__sys__OldList * filter;
785 struct Statement * stmt;
786 } ecere_gcc_struct forEachStmt;
787 struct Declaration * decl;
788 } ecere_gcc_struct __anon1;
791 struct Instantiation;
795 struct Expression * prev;
796 struct Expression * next;
804 struct Identifier * identifier;
805 } ecere_gcc_struct __anon1;
806 struct Statement * compound;
807 struct Instantiation * instance;
811 unsigned int intlString;
812 unsigned int wideString;
813 } ecere_gcc_struct __anon2;
814 struct __ecereNameSpace__ecere__sys__OldList * list;
817 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
818 struct Declarator * decl;
819 } ecere_gcc_struct _classExp;
822 struct Identifier * id;
823 } ecere_gcc_struct classData;
826 struct Expression * exp;
827 struct __ecereNameSpace__ecere__sys__OldList * arguments;
828 struct Location argLoc;
829 } ecere_gcc_struct call;
832 struct Expression * exp;
833 struct __ecereNameSpace__ecere__sys__OldList * index;
834 } ecere_gcc_struct index;
837 struct Expression * exp;
838 struct Identifier * member;
840 unsigned int thisPtr;
841 } ecere_gcc_struct member;
845 struct Expression * exp1;
846 struct Expression * exp2;
847 } ecere_gcc_struct op;
848 struct TypeName * typeName;
849 struct Specifier * _class;
852 struct TypeName * typeName;
853 struct Expression * exp;
854 } ecere_gcc_struct cast;
857 struct Expression * cond;
858 struct __ecereNameSpace__ecere__sys__OldList * exp;
859 struct Expression * elseExp;
860 } ecere_gcc_struct cond;
863 struct TypeName * typeName;
864 struct Expression * size;
865 } ecere_gcc_struct _new;
868 struct TypeName * typeName;
869 struct Expression * size;
870 struct Expression * exp;
871 } ecere_gcc_struct _renew;
875 struct Identifier * id;
876 } ecere_gcc_struct db;
879 struct Expression * ds;
880 struct Expression * name;
881 } ecere_gcc_struct dbopen;
884 struct TypeName * typeName;
885 struct Initializer * initializer;
886 } ecere_gcc_struct initializer;
889 struct Expression * exp;
890 struct TypeName * typeName;
891 } ecere_gcc_struct vaArg;
894 struct TypeName * typeName;
895 struct Identifier * id;
896 } ecere_gcc_struct offset;
897 } ecere_gcc_struct __anon1;
898 unsigned int debugValue;
899 struct __ecereNameSpace__ecere__com__DataValue val;
901 unsigned int hasAddress;
902 struct Type * expType;
903 struct Type * destType;
906 unsigned int byReference;
907 unsigned int isConstant;
908 unsigned int addedThis;
909 unsigned int needCast;
910 unsigned int thisPtr;
911 unsigned int opDestType;
912 unsigned int usedInComparison;
913 unsigned int ambiguousUnits;
914 unsigned int parentOpDestType;
915 unsigned int needTemplateCast;
920 struct Declaration * prev;
921 struct Declaration * next;
928 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
929 struct __ecereNameSpace__ecere__sys__OldList * declarators;
930 } ecere_gcc_struct __anon1;
931 struct Instantiation * inst;
934 struct Identifier * id;
935 struct Expression * exp;
936 } ecere_gcc_struct __anon2;
937 } ecere_gcc_struct __anon1;
938 struct Specifier * extStorage;
939 struct Symbol * symbol;
945 struct Instantiation * prev;
946 struct Instantiation * next;
948 struct Specifier * _class;
949 struct Expression * exp;
950 struct __ecereNameSpace__ecere__sys__OldList * members;
951 struct Symbol * symbol;
952 unsigned int fullSet;
953 unsigned int isConstant;
954 unsigned char * data;
955 struct Location nameLoc;
956 struct Location insideLoc;
960 struct ClassDefinition;
962 struct ClassDefinition
964 struct ClassDefinition * prev;
965 struct ClassDefinition * next;
967 struct Specifier * _class;
968 struct __ecereNameSpace__ecere__sys__OldList * baseSpecs;
969 struct __ecereNameSpace__ecere__sys__OldList * definitions;
970 struct Symbol * symbol;
971 struct Location blockStart;
972 struct Location nameLoc;
974 unsigned int deleteWatchable;
977 struct __ecereNameSpace__ecere__com__NameSpace;
979 struct __ecereNameSpace__ecere__com__NameSpace
982 struct __ecereNameSpace__ecere__com__NameSpace * btParent;
983 struct __ecereNameSpace__ecere__com__NameSpace * left;
984 struct __ecereNameSpace__ecere__com__NameSpace * right;
986 struct __ecereNameSpace__ecere__com__NameSpace * parent;
987 struct __ecereNameSpace__ecere__sys__BinaryTree nameSpaces;
988 struct __ecereNameSpace__ecere__sys__BinaryTree classes;
989 struct __ecereNameSpace__ecere__sys__BinaryTree defines;
990 struct __ecereNameSpace__ecere__sys__BinaryTree functions;
993 struct __ecereNameSpace__ecere__com__Class
995 struct __ecereNameSpace__ecere__com__Class * prev;
996 struct __ecereNameSpace__ecere__com__Class * next;
1002 unsigned int (* Constructor)(void * );
1003 void (* Destructor)(void * );
1006 struct __ecereNameSpace__ecere__com__Class * base;
1007 struct __ecereNameSpace__ecere__sys__BinaryTree methods;
1008 struct __ecereNameSpace__ecere__sys__BinaryTree members;
1009 struct __ecereNameSpace__ecere__sys__BinaryTree prop;
1010 struct __ecereNameSpace__ecere__sys__OldList membersAndProperties;
1011 struct __ecereNameSpace__ecere__sys__BinaryTree classProperties;
1012 struct __ecereNameSpace__ecere__sys__OldList derivatives;
1016 struct __ecereNameSpace__ecere__com__Instance * module;
1017 struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
1018 const char * dataTypeString;
1019 struct Type * dataType;
1021 int defaultAlignment;
1022 void (* Initialize)();
1024 struct __ecereNameSpace__ecere__sys__OldList selfWatchers;
1025 const char * designerClass;
1026 unsigned int noExpansion;
1027 const char * defaultProperty;
1028 unsigned int comRedefinition;
1031 unsigned int internalDecl;
1033 unsigned int computeSize;
1034 short structAlignment;
1035 short pointerAlignment;
1036 int destructionWatchOffset;
1038 struct __ecereNameSpace__ecere__sys__OldList delayedCPValues;
1039 int inheritanceAccess;
1040 const char * fullName;
1042 struct __ecereNameSpace__ecere__sys__OldList conversions;
1043 struct __ecereNameSpace__ecere__sys__OldList templateParams;
1044 struct __ecereNameSpace__ecere__com__ClassTemplateArgument * templateArgs;
1045 struct __ecereNameSpace__ecere__com__Class * templateClass;
1046 struct __ecereNameSpace__ecere__sys__OldList templatized;
1048 unsigned int isInstanceClass;
1049 unsigned int byValueSystemClass;
1050 void * bindingsClass;
1053 struct __ecereNameSpace__ecere__com__Application
1056 const char * * argv;
1058 unsigned int isGUIApp;
1059 struct __ecereNameSpace__ecere__sys__OldList allModules;
1060 char * parsedCommand;
1061 struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
1064 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass_TypeName;
1066 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__TempFile;
1068 extern struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__sys__File;
1070 struct __ecereNameSpace__ecere__com__Module
1072 struct __ecereNameSpace__ecere__com__Instance * application;
1073 struct __ecereNameSpace__ecere__sys__OldList classes;
1074 struct __ecereNameSpace__ecere__sys__OldList defines;
1075 struct __ecereNameSpace__ecere__sys__OldList functions;
1076 struct __ecereNameSpace__ecere__sys__OldList modules;
1077 struct __ecereNameSpace__ecere__com__Instance * prev;
1078 struct __ecereNameSpace__ecere__com__Instance * next;
1084 struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
1085 struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
1088 static void OutputIdentifier(struct Identifier * id, struct __ecereNameSpace__ecere__com__Instance * f)
1094 if(id->_class->type == 8)
1096 if(id->_class->__anon1.templateParameter && id->_class->__anon1.templateParameter->identifier && id->_class->__anon1.templateParameter->identifier->string)
1098 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1100 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1101 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1103 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1104 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1105 __internal_VirtualMethod ? __internal_VirtualMethod(f, id->_class->__anon1.templateParameter->identifier->string) : (unsigned int)1;
1110 if(id->_class->__anon1.__anon1.name)
1112 if(!strcmp(id->_class->__anon1.__anon1.name, "class"))
1114 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1116 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1117 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1119 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1120 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1121 __internal_VirtualMethod ? __internal_VirtualMethod(f, "typed_object") : (unsigned int)1;
1125 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1127 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1128 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1130 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1131 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1132 __internal_VirtualMethod ? __internal_VirtualMethod(f, id->_class->__anon1.__anon1.name) : (unsigned int)1;
1137 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1139 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1140 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1142 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1143 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1144 __internal_VirtualMethod ? __internal_VirtualMethod(f, "::") : (unsigned int)1;
1149 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1151 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1152 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1154 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1155 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1156 __internal_VirtualMethod ? __internal_VirtualMethod(f, (id && id->string) ? id->string : "(null identifier)") : (unsigned int)1;
1160 static void OutputOperator(int op, struct __ecereNameSpace__ecere__com__Instance * f)
1166 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1168 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1169 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1171 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1172 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1173 __internal_VirtualMethod ? __internal_VirtualMethod(f, "++") : (unsigned int)1;
1178 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1180 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1181 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1183 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1184 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1185 __internal_VirtualMethod ? __internal_VirtualMethod(f, "--") : (unsigned int)1;
1190 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1192 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1193 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1195 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1196 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1197 __internal_VirtualMethod ? __internal_VirtualMethod(f, "sizeof ") : (unsigned int)1;
1202 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1204 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1205 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1207 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1208 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1209 __internal_VirtualMethod ? __internal_VirtualMethod(f, "<<") : (unsigned int)1;
1214 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1216 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1217 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1219 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1220 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1221 __internal_VirtualMethod ? __internal_VirtualMethod(f, ">>") : (unsigned int)1;
1226 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1228 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1229 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1231 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1232 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1233 __internal_VirtualMethod ? __internal_VirtualMethod(f, "<=") : (unsigned int)1;
1238 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1240 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1241 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1243 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1244 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1245 __internal_VirtualMethod ? __internal_VirtualMethod(f, ">=") : (unsigned int)1;
1250 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1252 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1253 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1255 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1256 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1257 __internal_VirtualMethod ? __internal_VirtualMethod(f, "==") : (unsigned int)1;
1262 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1264 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1265 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1267 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1268 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1269 __internal_VirtualMethod ? __internal_VirtualMethod(f, "!=") : (unsigned int)1;
1274 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1276 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1277 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1279 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1280 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1281 __internal_VirtualMethod ? __internal_VirtualMethod(f, "&&") : (unsigned int)1;
1286 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1288 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1289 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1291 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1292 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1293 __internal_VirtualMethod ? __internal_VirtualMethod(f, "||") : (unsigned int)1;
1298 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1300 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1301 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1303 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1304 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1305 __internal_VirtualMethod ? __internal_VirtualMethod(f, "*=") : (unsigned int)1;
1310 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1312 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1313 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1315 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1316 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1317 __internal_VirtualMethod ? __internal_VirtualMethod(f, "/=") : (unsigned int)1;
1322 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1324 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1325 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1327 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1328 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1329 __internal_VirtualMethod ? __internal_VirtualMethod(f, "%=") : (unsigned int)1;
1334 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1336 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1337 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1339 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1340 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1341 __internal_VirtualMethod ? __internal_VirtualMethod(f, "+=") : (unsigned int)1;
1346 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1348 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1349 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1351 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1352 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1353 __internal_VirtualMethod ? __internal_VirtualMethod(f, "-=") : (unsigned int)1;
1358 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1360 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1361 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1363 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1364 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1365 __internal_VirtualMethod ? __internal_VirtualMethod(f, "<<=") : (unsigned int)1;
1370 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1372 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1373 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1375 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1376 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1377 __internal_VirtualMethod ? __internal_VirtualMethod(f, ">>=") : (unsigned int)1;
1382 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1384 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1385 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1387 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1388 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1389 __internal_VirtualMethod ? __internal_VirtualMethod(f, "&=") : (unsigned int)1;
1394 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1396 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1397 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1399 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1400 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1401 __internal_VirtualMethod ? __internal_VirtualMethod(f, "^=") : (unsigned int)1;
1406 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1408 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1409 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1411 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1412 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1413 __internal_VirtualMethod ? __internal_VirtualMethod(f, "|=") : (unsigned int)1;
1430 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, char ch);
1432 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, char ch))__extension__ ({
1433 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1435 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1436 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Putc]);
1437 __internal_VirtualMethod ? __internal_VirtualMethod(f, (char)op) : (unsigned int)1;
1442 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1444 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1445 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1447 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1448 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1449 __internal_VirtualMethod ? __internal_VirtualMethod(f, "delete ") : (unsigned int)1;
1455 void __ecereUnregisterModule_output(struct __ecereNameSpace__ecere__com__Instance * module)
1460 struct ClassFunction;
1464 struct ClassDef * prev;
1465 struct ClassDef * next;
1466 struct Location loc;
1470 struct Declaration * decl;
1471 struct ClassFunction * function;
1472 struct __ecereNameSpace__ecere__sys__OldList * defProperties;
1473 struct PropertyDef * propertyDef;
1474 struct PropertyWatch * propertyWatch;
1476 struct Identifier * defaultProperty;
1479 struct Identifier * id;
1480 struct Initializer * initializer;
1481 } ecere_gcc_struct __anon1;
1482 } ecere_gcc_struct __anon1;
1489 struct MembersInit * prev;
1490 struct MembersInit * next;
1491 struct Location loc;
1495 struct __ecereNameSpace__ecere__sys__OldList * dataMembers;
1496 struct ClassFunction * function;
1497 } ecere_gcc_struct __anon1;
1500 struct ClassFunction
1502 struct ClassFunction * prev;
1503 struct ClassFunction * next;
1504 struct Location loc;
1505 struct __ecereNameSpace__ecere__sys__OldList * specifiers;
1506 struct Declarator * declarator;
1507 struct __ecereNameSpace__ecere__sys__OldList * declarations;
1508 struct Statement * body;
1509 struct __ecereNameSpace__ecere__com__Class * _class;
1510 struct __ecereNameSpace__ecere__sys__OldList attached;
1513 struct Symbol * propSet;
1514 unsigned int isVirtual;
1515 unsigned int isConstructor;
1516 unsigned int isDestructor;
1517 unsigned int dontMangle;
1522 struct InitDeclarator;
1524 struct InitDeclarator
1526 struct InitDeclarator * prev;
1527 struct InitDeclarator * next;
1528 struct Location loc;
1529 struct Declarator * declarator;
1530 struct Initializer * initializer;
1535 typedef union YYSTYPE
1540 struct Identifier * id;
1541 struct Expression * exp;
1542 struct Specifier * specifier;
1543 struct __ecereNameSpace__ecere__sys__OldList * list;
1544 struct Enumerator * enumerator;
1545 struct Declarator * declarator;
1546 struct Pointer * pointer;
1547 struct Initializer * initializer;
1548 struct InitDeclarator * initDeclarator;
1549 struct TypeName * typeName;
1550 struct Declaration * declaration;
1551 struct Statement * stmt;
1552 struct FunctionDefinition * function;
1553 struct External * external;
1554 struct Context * context;
1555 struct AsmField * asmField;
1556 struct Attrib * attrib;
1557 struct ExtDecl * extDecl;
1558 struct Attribute * attribute;
1559 struct Instantiation * instance;
1560 struct MembersInit * membersInit;
1561 struct MemberInit * memberInit;
1562 struct ClassFunction * classFunction;
1563 struct ClassDefinition * _class;
1564 struct ClassDef * classDef;
1565 struct PropertyDef * prop;
1567 struct Symbol * symbol;
1568 struct PropertyWatch * propertyWatch;
1569 struct TemplateParameter * templateParameter;
1570 struct TemplateArgument * templateArgument;
1571 struct TemplateDatatype * templateDatatype;
1572 struct DBTableEntry * dbtableEntry;
1573 struct DBIndexItem * dbindexItem;
1574 struct DBTableDef * dbtableDef;
1575 } ecere_gcc_struct YYSTYPE;
1577 extern YYSTYPE yylval;
1582 struct Symbol * parent;
1583 struct Symbol * left;
1584 struct Symbol * right;
1589 struct __ecereNameSpace__ecere__com__Method * method;
1590 struct __ecereNameSpace__ecere__com__Property * _property;
1591 struct __ecereNameSpace__ecere__com__Class * registered;
1592 } ecere_gcc_struct __anon1;
1593 unsigned int notYetDeclared;
1598 struct External * pointerExternal;
1599 struct External * structExternal;
1600 } ecere_gcc_struct __anon1;
1603 struct External * externalGet;
1604 struct External * externalSet;
1605 struct External * externalPtr;
1606 struct External * externalIsSet;
1607 } ecere_gcc_struct __anon2;
1610 struct External * methodExternal;
1611 struct External * methodCodeExternal;
1612 } ecere_gcc_struct __anon3;
1613 } ecere_gcc_struct __anon2;
1614 unsigned int imported;
1615 unsigned int declaredStructSym;
1616 struct __ecereNameSpace__ecere__com__Class * _class;
1617 unsigned int declaredStruct;
1618 unsigned int needConstructor;
1619 unsigned int needDestructor;
1620 char * constructorName;
1623 char * destructorName;
1624 struct ModuleImport * module;
1625 struct ClassImport * _import;
1626 struct Location nameLoc;
1627 unsigned int isParam;
1628 unsigned int isRemote;
1629 unsigned int isStruct;
1630 unsigned int fireWatchersDone;
1632 unsigned int classData;
1633 unsigned int isStatic;
1635 struct __ecereNameSpace__ecere__sys__OldList * templateParams;
1636 struct __ecereNameSpace__ecere__sys__OldList templatedClasses;
1637 struct Context * ctx;
1639 struct Expression * propCategory;
1640 unsigned int mustRegister;
1645 struct External * prev;
1646 struct External * next;
1647 struct Location loc;
1649 struct Symbol * symbol;
1652 struct FunctionDefinition * function;
1653 struct ClassDefinition * _class;
1654 struct Declaration * declaration;
1655 char * importString;
1656 struct Identifier * id;
1657 struct DBTableDef * table;
1658 } ecere_gcc_struct __anon1;
1660 struct External * fwdDecl;
1661 struct __ecereNameSpace__ecere__com__Instance * outgoing;
1662 struct __ecereNameSpace__ecere__com__Instance * incoming;
1663 int nonBreakableIncoming;
1666 static void OutputSpecifier(struct Specifier * spec, struct __ecereNameSpace__ecere__com__Instance * f, unsigned int typeName);
1668 static void OutputPointer(struct Pointer * ptr, struct __ecereNameSpace__ecere__com__Instance * f)
1671 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1673 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1674 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1676 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1677 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1678 __internal_VirtualMethod ? __internal_VirtualMethod(f, "*") : (unsigned int)1;
1682 struct Specifier * spec;
1685 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1687 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1688 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1690 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1691 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1692 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1694 for(spec = (*ptr->qualifiers).first; spec; spec = spec->next)
1696 OutputSpecifier(spec, f, 0);
1699 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1701 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1702 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1704 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1705 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1706 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1712 OutputPointer(ptr->pointer, f);
1716 void OutputExpression(struct Expression * exp, struct __ecereNameSpace__ecere__com__Instance * f);
1718 static void OutputAsmField(struct AsmField * field, struct __ecereNameSpace__ecere__com__Instance * f)
1723 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1725 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1726 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1728 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1729 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1730 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
1732 OutputIdentifier(field->symbolic, f);
1734 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1736 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1737 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1739 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1740 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1741 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
1745 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1747 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1748 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1750 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1751 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1752 __internal_VirtualMethod ? __internal_VirtualMethod(f, field->command) : (unsigned int)1;
1754 if(field->expression)
1757 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1759 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1760 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1762 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1763 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1764 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
1766 OutputExpression(field->expression, f);
1768 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1770 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1771 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1773 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1774 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1775 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
1780 static void OutputEnumerator(struct Enumerator * enumerator, struct __ecereNameSpace__ecere__com__Instance * f)
1782 OutputIdentifier(enumerator->id, f);
1786 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1788 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1789 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1791 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1792 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1793 __internal_VirtualMethod ? __internal_VirtualMethod(f, " = ") : (unsigned int)1;
1795 OutputExpression(enumerator->exp, f);
1799 static void OutputAttribute(struct Attribute * attr, struct __ecereNameSpace__ecere__com__Instance * f)
1803 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1805 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1806 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1808 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1809 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1810 __internal_VirtualMethod ? __internal_VirtualMethod(f, attr->attr) : (unsigned int)1;
1815 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1817 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1818 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1820 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1821 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1822 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1824 OutputExpression(attr->exp, f);
1828 static void OutputInitializer(struct Initializer * initializer, struct __ecereNameSpace__ecere__com__Instance * f)
1830 char name[274] = "";
1831 char origName[274] = "";
1835 GetSourceName(name, initializer->loc.start.included ? GetIncludeFileFromID(initializer->loc.start.included) : (((void *)0)));
1836 __ecereNameSpace__ecere__sys__PathCat(origName, outputFile);
1837 __ecereNameSpace__ecere__sys__ChangeCh(origName, '\\', '/');
1839 if(initializer->type == 1)
1841 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1843 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1844 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1846 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1847 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1848 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
1853 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1855 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1856 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1858 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1859 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1860 __internal_VirtualMethod ? __internal_VirtualMethod(f, ".") : (unsigned int)1;
1862 OutputIdentifier(initializer->id, f);
1864 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1866 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1867 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1869 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1870 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1871 __internal_VirtualMethod ? __internal_VirtualMethod(f, " =") : (unsigned int)1;
1874 switch(initializer->type)
1878 struct Initializer * init;
1882 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1884 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1885 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1887 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1888 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1889 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1892 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1894 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1895 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1897 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1898 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1899 __internal_VirtualMethod ? __internal_VirtualMethod(f, "{\n") : (unsigned int)1;
1902 if(inCompiler && outputLineNumbers && initializer->loc.start.line)
1904 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", initializer->loc.start.line, name);
1907 for(init = (*initializer->__anon1.list).first; init; init = init->next)
1909 OutputInitializer(init, f);
1912 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1914 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1915 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1917 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1918 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1919 __internal_VirtualMethod ? __internal_VirtualMethod(f, init->next->type == 1 ? "," : ", ") : (unsigned int)1;
1923 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1925 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1926 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1928 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1929 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1930 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n}") : (unsigned int)1;
1932 if(inCompiler && outputLineNumbers && initializer->loc.start.line)
1934 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", initializer->loc.start.line, name);
1943 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1945 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1946 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1948 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1949 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1950 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
1952 if(initializer->__anon1.exp)
1953 OutputExpression(initializer->__anon1.exp, f);
1958 static void OutputAttrib(struct Attrib * attr, struct __ecereNameSpace__ecere__com__Instance * f)
1964 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1966 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1967 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1969 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1970 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1971 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__attribute__((") : (unsigned int)1;
1976 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1978 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1979 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1981 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1982 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1983 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__attribute((") : (unsigned int)1;
1988 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
1990 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
1991 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
1993 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
1994 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
1995 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__attribute_deprecated__((") : (unsigned int)1;
2001 struct Attribute * attrib;
2003 for(attrib = (*attr->attribs).first; attrib; attrib = attrib->next)
2007 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2009 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2010 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2012 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2013 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2014 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
2016 OutputAttribute(attrib, f);
2020 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2022 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2023 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2025 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2026 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2027 __internal_VirtualMethod ? __internal_VirtualMethod(f, "))") : (unsigned int)1;
2031 static void OutputMemberInit(struct MemberInit * init, struct __ecereNameSpace__ecere__com__Instance * f)
2033 if(init->identifiers)
2035 if((*init->identifiers).count > 1)
2037 struct Identifier * id;
2039 for(id = (*init->identifiers).first; id; id = id->next)
2041 OutputIdentifier(id, f);
2044 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2046 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2047 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2049 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2050 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2051 __internal_VirtualMethod ? __internal_VirtualMethod(f, ".") : (unsigned int)1;
2055 else if((*init->identifiers).first)
2056 OutputIdentifier((*init->identifiers).first, f);
2058 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2060 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2061 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2063 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2064 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2065 __internal_VirtualMethod ? __internal_VirtualMethod(f, " =") : (unsigned int)1;
2067 if(init->initializer && init->initializer->type == 0)
2069 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2071 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2072 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2074 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2075 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2076 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2079 if(init->initializer)
2080 OutputInitializer(init->initializer, f);
2083 static void OutputExtDecl(struct ExtDecl * extDecl, struct __ecereNameSpace__ecere__com__Instance * f)
2085 if(extDecl->type == 0 && extDecl->__anon1.s)
2087 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2089 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2090 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2092 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2093 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2094 __internal_VirtualMethod ? __internal_VirtualMethod(f, extDecl->__anon1.s) : (unsigned int)1;
2096 else if(extDecl->type == 1)
2097 OutputAttrib(extDecl->__anon1.attr, f);
2100 void OutputTypeName(struct TypeName * type, struct __ecereNameSpace__ecere__com__Instance * f, unsigned int typeName);
2102 static void OutputDeclarator(struct Declarator * decl, struct __ecereNameSpace__ecere__com__Instance * f)
2107 if(decl->declarator)
2109 OutputDeclarator(decl->declarator, f);
2111 if(decl->__anon1.structDecl.exp)
2114 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2116 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2117 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2119 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2120 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2121 __internal_VirtualMethod ? __internal_VirtualMethod(f, " : ") : (unsigned int)1;
2123 OutputExpression(decl->__anon1.structDecl.exp, f);
2125 if(decl->__anon1.structDecl.posExp)
2128 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2130 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2131 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2133 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2134 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2135 __internal_VirtualMethod ? __internal_VirtualMethod(f, " : ") : (unsigned int)1;
2137 OutputExpression(decl->__anon1.structDecl.posExp, f);
2139 if(decl->__anon1.structDecl.attrib)
2142 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2144 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2145 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2147 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2148 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2149 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2151 OutputAttrib(decl->__anon1.structDecl.attrib, f);
2155 OutputIdentifier(decl->__anon1.identifier, f);
2159 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2161 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2162 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2164 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2165 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2166 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
2168 OutputDeclarator(decl->declarator, f);
2170 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2172 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2173 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2175 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2176 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2177 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
2181 if(decl->__anon1.extended.extended)
2182 OutputExtDecl(decl->__anon1.extended.extended, f);
2184 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2186 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2187 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2189 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2190 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2191 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2193 OutputDeclarator(decl->declarator, f);
2196 OutputDeclarator(decl->declarator, f);
2198 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2200 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2201 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2203 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2204 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2205 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2207 if(decl->__anon1.extended.extended)
2208 OutputExtDecl(decl->__anon1.extended.extended, f);
2211 if(decl->declarator)
2213 OutputDeclarator(decl->declarator, f);
2216 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2218 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2219 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2221 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2222 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2223 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
2225 if(decl->__anon1.array.exp)
2227 ProcessExpressionType(decl->__anon1.array.exp);
2228 ComputeExpression(decl->__anon1.array.exp);
2229 OutputExpression(decl->__anon1.array.exp, f);
2231 else if(decl->__anon1.array.enumClass)
2233 struct Symbol * _class = decl->__anon1.array.enumClass->__anon1.__anon1.symbol;
2235 if(_class && _class->__anon1.registered)
2237 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "%d", (int)__ecereNameSpace__ecere__com__eClass_GetProperty(_class->__anon1.registered, "enumSize"));
2241 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2243 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2244 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2246 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2247 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2248 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
2253 struct TypeName * param;
2255 if(decl->declarator)
2256 OutputDeclarator(decl->declarator, f);
2258 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2260 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2261 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2263 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2264 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2265 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
2267 if(decl->__anon1.function.parameters && (*decl->__anon1.function.parameters).first)
2269 for(param = (*decl->__anon1.function.parameters).first; param; param = param->next)
2271 OutputTypeName(param, f, 0);
2274 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2276 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2277 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2279 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2280 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2281 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
2286 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2288 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2289 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2291 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2292 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2293 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
2298 if(decl->__anon1.pointer.pointer)
2299 OutputPointer(decl->__anon1.pointer.pointer, f);
2300 if(decl->declarator)
2303 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2305 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2306 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2308 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2309 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2310 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2312 OutputDeclarator(decl->declarator, f);
2318 char * StringFromSpecDecl(struct __ecereNameSpace__ecere__sys__OldList * specs, struct Declarator * decl)
2321 struct TypeName * typeName = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass_TypeName);
2322 struct __ecereNameSpace__ecere__com__Instance * f = __ecereNameSpace__ecere__com__eInstance_New(__ecereClass___ecereNameSpace__ecere__sys__TempFile);
2325 typeName->qualifiers = specs;
2326 typeName->declarator = decl;
2327 OutputTypeName(typeName, f, 1);
2328 ((typeName ? __extension__ ({
2329 void * __ecerePtrToDelete = (typeName);
2331 __ecereClass_TypeName->Destructor ? __ecereClass_TypeName->Destructor((void *)__ecerePtrToDelete) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(__ecerePtrToDelete);
2332 }) : 0), typeName = 0);
2333 size = (__extension__ ({
2334 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *);
2336 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *))__extension__ ({
2337 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2339 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2340 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_GetSize]);
2341 __internal_VirtualMethod ? __internal_VirtualMethod(f) : (unsigned int)1;
2343 string = __ecereNameSpace__ecere__com__eSystem_New(sizeof(char) * (size + 1));
2345 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode);
2347 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, int pos, int mode))__extension__ ({
2348 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2350 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2351 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Seek]);
2352 __internal_VirtualMethod ? __internal_VirtualMethod(f, 0, 0) : (unsigned int)1;
2355 int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count);
2357 __internal_VirtualMethod = ((int (*)(struct __ecereNameSpace__ecere__com__Instance *, void * buffer, unsigned int size, unsigned int count))__extension__ ({
2358 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2360 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2361 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Read]);
2362 __internal_VirtualMethod ? __internal_VirtualMethod(f, string, 1, (unsigned int)size) : (int)1;
2364 string[size] = '\0';
2365 __ecereNameSpace__ecere__sys__TrimRSpaces(string, string);
2366 (__ecereNameSpace__ecere__com__eInstance_DecRef(f), f = 0);
2370 void OutputTypeName(struct TypeName * type, struct __ecereNameSpace__ecere__com__Instance * f, unsigned int typeName)
2372 if(type->qualifiers)
2374 struct Specifier * spec;
2376 for(spec = (*type->qualifiers).first; spec; spec = spec->next)
2378 OutputSpecifier(spec, f, typeName);
2381 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2383 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2384 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2386 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2387 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2388 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2392 if(type->declarator)
2395 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2397 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2398 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2400 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2401 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2402 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2404 OutputDeclarator(type->declarator, f);
2406 if(!type->qualifiers && !type->declarator)
2408 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2410 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2411 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2413 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2414 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2415 __internal_VirtualMethod ? __internal_VirtualMethod(f, "...") : (unsigned int)1;
2419 static void OutputInitDeclarator(struct InitDeclarator * decl, struct __ecereNameSpace__ecere__com__Instance * f)
2421 OutputDeclarator(decl->declarator, f);
2422 if(decl->initializer)
2425 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2427 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2428 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2430 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2431 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2432 __internal_VirtualMethod ? __internal_VirtualMethod(f, " =") : (unsigned int)1;
2434 if(decl->initializer->type == 0)
2436 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2438 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2439 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2441 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2442 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2443 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2445 OutputInitializer(decl->initializer, f);
2449 static void OutputFunction(struct FunctionDefinition * func, struct __ecereNameSpace__ecere__com__Instance * f);
2451 static void OutputClassDef(struct ClassDef * def, struct __ecereNameSpace__ecere__com__Instance * f);
2453 static void OutputSpecifier(struct Specifier * spec, struct __ecereNameSpace__ecere__com__Instance * f, unsigned int typeName)
2458 switch(spec->__anon1.specifier)
2462 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2464 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2465 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2467 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2468 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2469 __internal_VirtualMethod ? __internal_VirtualMethod(f, "typedef") : (unsigned int)1;
2474 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2476 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2477 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2479 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2480 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2481 __internal_VirtualMethod ? __internal_VirtualMethod(f, "extern") : (unsigned int)1;
2486 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2488 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2489 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2491 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2492 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2493 __internal_VirtualMethod ? __internal_VirtualMethod(f, "static") : (unsigned int)1;
2498 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2500 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2501 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2503 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2504 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2505 __internal_VirtualMethod ? __internal_VirtualMethod(f, "auto") : (unsigned int)1;
2510 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2512 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2513 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2515 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2516 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2517 __internal_VirtualMethod ? __internal_VirtualMethod(f, "register") : (unsigned int)1;
2522 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2524 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2525 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2527 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2528 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2529 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__thread") : (unsigned int)1;
2534 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2536 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2537 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2539 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2540 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2541 __internal_VirtualMethod ? __internal_VirtualMethod(f, "const") : (unsigned int)1;
2546 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2548 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2549 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2551 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2552 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2553 __internal_VirtualMethod ? __internal_VirtualMethod(f, "volatile") : (unsigned int)1;
2558 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2560 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2561 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2563 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2564 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2565 __internal_VirtualMethod ? __internal_VirtualMethod(f, "void") : (unsigned int)1;
2570 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2572 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2573 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2575 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2576 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2577 __internal_VirtualMethod ? __internal_VirtualMethod(f, "char") : (unsigned int)1;
2583 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2585 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2586 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2588 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2589 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2590 __internal_VirtualMethod ? __internal_VirtualMethod(f, "_Bool") : (unsigned int)1;
2595 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2597 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2598 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2600 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2601 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2602 __internal_VirtualMethod ? __internal_VirtualMethod(f, "_Complex") : (unsigned int)1;
2607 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2609 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2610 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2612 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2613 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2614 __internal_VirtualMethod ? __internal_VirtualMethod(f, "_Imaginary") : (unsigned int)1;
2619 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2621 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2622 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2624 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2625 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2626 __internal_VirtualMethod ? __internal_VirtualMethod(f, "restrict") : (unsigned int)1;
2631 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2633 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2634 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2636 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2637 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2638 __internal_VirtualMethod ? __internal_VirtualMethod(f, "short") : (unsigned int)1;
2643 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2645 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2646 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2648 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2649 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2650 __internal_VirtualMethod ? __internal_VirtualMethod(f, "int") : (unsigned int)1;
2655 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2657 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2658 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2660 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2661 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2662 __internal_VirtualMethod ? __internal_VirtualMethod(f, typeName ? "uint" : "unsigned int") : (unsigned int)1;
2667 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2669 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2670 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2672 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2673 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2674 __internal_VirtualMethod ? __internal_VirtualMethod(f, typeName ? "int64" : "long long") : (unsigned int)1;
2679 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2681 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2682 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2684 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2685 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2686 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__int128") : (unsigned int)1;
2691 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2693 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2694 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2696 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2697 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2698 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__builtin_va_list") : (unsigned int)1;
2703 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2705 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2706 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2708 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2709 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2710 __internal_VirtualMethod ? __internal_VirtualMethod(f, "long") : (unsigned int)1;
2715 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2717 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2718 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2720 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2721 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2722 __internal_VirtualMethod ? __internal_VirtualMethod(f, "float") : (unsigned int)1;
2727 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2729 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2730 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2732 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2733 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2734 __internal_VirtualMethod ? __internal_VirtualMethod(f, "double") : (unsigned int)1;
2739 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2741 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2742 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2744 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2745 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2746 __internal_VirtualMethod ? __internal_VirtualMethod(f, "signed") : (unsigned int)1;
2751 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2753 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2754 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2756 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2757 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2758 __internal_VirtualMethod ? __internal_VirtualMethod(f, "unsigned") : (unsigned int)1;
2763 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2765 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2766 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2768 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2769 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2770 __internal_VirtualMethod ? __internal_VirtualMethod(f, "typed_object") : (unsigned int)1;
2775 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2777 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2778 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2780 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2781 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2782 __internal_VirtualMethod ? __internal_VirtualMethod(f, "any_object") : (unsigned int)1;
2787 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2789 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2790 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2792 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2793 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2794 __internal_VirtualMethod ? __internal_VirtualMethod(f, "class") : (unsigned int)1;
2799 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2801 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2802 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2804 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2805 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2806 __internal_VirtualMethod ? __internal_VirtualMethod(f, "thisclass") : (unsigned int)1;
2812 if(spec->__anon1.__anon1.extDecl)
2813 OutputExtDecl(spec->__anon1.__anon1.extDecl, f);
2816 if(spec->__anon1.__anon1.name && !strcmp(spec->__anon1.__anon1.name, "class"))
2819 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2821 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2822 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2824 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2825 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2826 __internal_VirtualMethod ? __internal_VirtualMethod(f, "typed_object") : (unsigned int)1;
2831 struct Symbol * symbol = spec->__anon1.__anon1.symbol;
2833 if(!symbol && spec->__anon1.__anon1.name)
2834 symbol = FindClass(spec->__anon1.__anon1.name);
2838 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2840 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2841 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2843 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2844 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2845 __internal_VirtualMethod ? __internal_VirtualMethod(f, symbol->string ? symbol->string : "(null)") : (unsigned int)1;
2848 else if(spec->__anon1.__anon1.name)
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, spec->__anon1.__anon1.name) : (unsigned int)1;
2864 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2866 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2867 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2869 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2870 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2871 __internal_VirtualMethod ? __internal_VirtualMethod(f, "enum") : (unsigned int)1;
2873 if(spec->__anon1.__anon2.id)
2876 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2878 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2879 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2881 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2882 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2883 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2885 OutputIdentifier(spec->__anon1.__anon2.id, f);
2887 if(spec->__anon1.__anon2.list)
2889 struct Enumerator * enumerator;
2892 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2894 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2895 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2897 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2898 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2899 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n{\n") : (unsigned int)1;
2902 for(enumerator = (*spec->__anon1.__anon2.list).first; enumerator; enumerator = enumerator->next)
2904 OutputEnumerator(enumerator, f);
2905 if(enumerator->next)
2907 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2909 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2910 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2912 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2913 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2914 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
2918 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2920 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2921 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2923 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2924 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2925 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n}") : (unsigned int)1;
2935 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2937 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2938 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2940 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2941 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2942 __internal_VirtualMethod ? __internal_VirtualMethod(f, (spec->type == 3) ? "struct" : "union") : (unsigned int)1;
2944 if(spec->__anon1.__anon2.extDeclStruct)
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 OutputExtDecl(spec->__anon1.__anon2.extDeclStruct, f);
2958 if(spec->__anon1.__anon2.id)
2961 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2963 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2964 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2966 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2967 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2968 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
2970 OutputIdentifier(spec->__anon1.__anon2.id, f);
2972 if(spec->__anon1.__anon2.definitions)
2974 struct ClassDef * def;
2977 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
2979 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
2980 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
2982 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
2983 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
2984 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n{\n") : (unsigned int)1;
2987 for(def = (*spec->__anon1.__anon2.definitions).first; def; def = def->next)
2989 OutputClassDef(def, f);
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, "} ecere_gcc_struct") : (unsigned int)1;
3006 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3008 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3009 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3011 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3012 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3013 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__typeof(") : (unsigned int)1;
3015 OutputExpression(spec->__anon1.expression, f);
3017 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3019 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3020 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3022 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3023 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3024 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
3029 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3031 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3032 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3034 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3035 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3036 __internal_VirtualMethod ? __internal_VirtualMethod(f, "subclass(") : (unsigned int)1;
3038 OutputSpecifier(spec->__anon1._class, f, 0);
3040 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3042 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3043 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3045 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3046 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3047 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
3051 OutputIdentifier(spec->__anon1.templateParameter->identifier, f);
3056 static void OutputClass(struct ClassDefinition * _class, struct __ecereNameSpace__ecere__com__Instance * f)
3059 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3061 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3062 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3064 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3065 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3066 __internal_VirtualMethod ? __internal_VirtualMethod(f, "class ") : (unsigned int)1;
3068 OutputSpecifier(_class->_class, f, 0);
3069 if(_class->baseSpecs)
3071 struct Specifier * spec;
3074 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3076 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3077 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3079 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3080 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3081 __internal_VirtualMethod ? __internal_VirtualMethod(f, " : ") : (unsigned int)1;
3083 for(spec = (*_class->baseSpecs).first; spec; spec = spec->next)
3085 OutputSpecifier(spec, f, 0);
3088 if(_class->definitions)
3090 struct ClassDef * def;
3093 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3095 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3096 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3098 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3099 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3100 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n{\n") : (unsigned int)1;
3103 for(def = (*_class->definitions).first; def; def = def->next)
3105 OutputClassDef(def, f);
3108 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3110 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3111 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3113 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3114 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3115 __internal_VirtualMethod ? __internal_VirtualMethod(f, "}\n") : (unsigned int)1;
3121 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3123 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3124 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3126 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3127 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3128 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
3132 static void OutputMembersInit(struct MembersInit * init, struct __ecereNameSpace__ecere__com__Instance * f);
3134 static void OutputInstance(struct Instantiation * inst, struct __ecereNameSpace__ecere__com__Instance * f)
3137 OutputSpecifier(inst->_class, f, 0);
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, " ") : (unsigned int)1;
3150 OutputExpression(inst->exp, f);
3152 if(inst->members && (*inst->members).count > 1)
3155 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3157 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3158 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3160 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3161 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3162 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n{\n") : (unsigned int)1;
3166 else if(inst->members)
3168 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3170 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3171 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3173 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3174 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3175 __internal_VirtualMethod ? __internal_VirtualMethod(f, " { ") : (unsigned int)1;
3179 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3181 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3182 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3184 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3185 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3186 __internal_VirtualMethod ? __internal_VirtualMethod(f, "{") : (unsigned int)1;
3190 struct MembersInit * init;
3192 for(init = (*inst->members).first; init; init = init->next)
3194 OutputMembersInit(init, f);
3195 if(init->type == 0 && init->next)
3198 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3200 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3201 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3203 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3204 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3205 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";\n") : (unsigned int)1;
3213 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3215 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3216 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3218 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3219 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3220 __internal_VirtualMethod ? __internal_VirtualMethod(f, " }") : (unsigned int)1;
3224 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3226 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3227 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3229 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3230 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3231 __internal_VirtualMethod ? __internal_VirtualMethod(f, "}") : (unsigned int)1;
3235 static void OutputDeclaration(struct Declaration * decl, struct __ecereNameSpace__ecere__com__Instance * f)
3237 struct Specifier * spec;
3243 strcpy(origName, outputFile);
3244 __ecereNameSpace__ecere__sys__ChangeCh(origName, '\\', '/');
3246 GetSourceName(name, decl->loc.start.included ? GetIncludeFileFromID(decl->loc.start.included) : (((void *)0)));
3247 if(inCompiler && outputLineNumbers && decl->loc.start.line)
3249 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", decl->loc.start.line, name);
3256 struct InitDeclarator * d;
3258 if(decl->__anon1.__anon1.specifiers)
3260 unsigned int inTypeDef = 0;
3262 for(spec = (*decl->__anon1.__anon1.specifiers).first; spec; spec = spec->next)
3264 if(spec->type == 0 && spec->__anon1.specifier == TYPEDEF)
3266 OutputSpecifier(spec, f, inTypeDef && !spec->next);
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;
3280 if(decl->__anon1.__anon1.declarators && (*decl->__anon1.__anon1.declarators).first)
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;
3292 for(d = (*decl->__anon1.__anon1.declarators).first; d; d = d->next)
3294 OutputInitDeclarator(d, f);
3297 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3299 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3300 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3302 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3303 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3304 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3312 if(decl->__anon1.__anon1.specifiers)
3314 for(spec = (*decl->__anon1.__anon1.specifiers).first; spec; spec = spec->next)
3316 OutputSpecifier(spec, f, 0);
3319 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3321 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3322 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3324 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3325 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3326 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3330 if(decl->__anon1.__anon1.declarators)
3332 struct Declarator * d;
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;
3344 for(d = (*decl->__anon1.__anon1.declarators).first; d; d = d->next)
3346 OutputDeclarator(d, f);
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;
3360 if(decl->extStorage)
3363 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3365 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3366 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3368 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3369 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3370 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3372 OutputSpecifier(decl->extStorage, f, 0);
3377 if(decl->__anon1.inst)
3379 OutputInstance(decl->__anon1.inst, f);
3386 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3388 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3389 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3391 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3392 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3393 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";\n") : (unsigned int)1;
3396 if(inCompiler && outputLineNumbers && decl->loc.start.line)
3398 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", outputLine + 2, origName);
3403 static void OutputStatement(struct Statement * stmt, struct __ecereNameSpace__ecere__com__Instance * f)
3405 char name[274] = "";
3406 char origName[274] = "";
3410 GetSourceName(name, stmt->loc.start.included ? GetIncludeFileFromID(stmt->loc.start.included) : (((void *)0)));
3411 __ecereNameSpace__ecere__sys__PathCat(origName, outputFile);
3412 __ecereNameSpace__ecere__sys__ChangeCh(origName, '\\', '/');
3414 if(inCompiler && outputLineNumbers && stmt->loc.start.line)
3416 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", stmt->loc.start.line, name);
3422 OutputDeclaration(stmt->__anon1.decl, f);
3425 OutputIdentifier(stmt->__anon1.labeled.id, f);
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, ":\n") : (unsigned int)1;
3437 if(stmt->__anon1.labeled.stmt)
3439 if(stmt->__anon1.labeled.stmt->type == 14)
3441 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3443 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3444 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3446 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3447 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3448 __internal_VirtualMethod ? __internal_VirtualMethod(f, "; ") : (unsigned int)1;
3450 OutputStatement(stmt->__anon1.labeled.stmt, f);
3454 if(stmt->__anon1.caseStmt.exp)
3457 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3459 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3460 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3462 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3463 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3464 __internal_VirtualMethod ? __internal_VirtualMethod(f, "case ") : (unsigned int)1;
3466 OutputExpression(stmt->__anon1.caseStmt.exp, f);
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, ":\n") : (unsigned int)1;
3482 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3484 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3485 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3487 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3488 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3489 __internal_VirtualMethod ? __internal_VirtualMethod(f, "default:\n") : (unsigned int)1;
3493 if(stmt->__anon1.caseStmt.stmt)
3495 if(stmt->__anon1.caseStmt.stmt->type == 14)
3497 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3499 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3500 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3502 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3503 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3504 __internal_VirtualMethod ? __internal_VirtualMethod(f, "; ") : (unsigned int)1;
3506 OutputStatement(stmt->__anon1.caseStmt.stmt, f);
3512 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3514 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3515 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3517 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3518 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3519 __internal_VirtualMethod ? __internal_VirtualMethod(f, "{\n") : (unsigned int)1;
3522 if(stmt->__anon1.compound.declarations)
3524 struct Declaration * decl;
3526 for(decl = (*stmt->__anon1.compound.declarations).first; decl; decl = decl->next)
3528 OutputDeclaration(decl, f);
3531 if(stmt->__anon1.compound.statements)
3533 struct Statement * statement;
3535 if(stmt->__anon1.compound.declarations)
3538 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3540 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3541 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3543 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3544 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3545 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
3549 for(statement = (*stmt->__anon1.compound.statements).first; statement; statement = statement->next)
3551 OutputStatement(statement, f);
3553 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3555 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3556 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3558 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3559 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3560 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
3565 if(inCompiler && outputLineNumbers && stmt->loc.end.line)
3567 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", stmt->loc.end.line, name);
3571 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3573 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3574 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3576 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3577 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3578 __internal_VirtualMethod ? __internal_VirtualMethod(f, "}") : (unsigned int)1;
3584 if(stmt->__anon1.expressions)
3586 struct Expression * exp;
3588 for(exp = (*stmt->__anon1.expressions).first; exp; exp = exp->next)
3590 OutputExpression(exp, f);
3593 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3595 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3596 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3598 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3599 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3600 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3605 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3607 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3608 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3610 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3611 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3612 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
3618 struct Expression * exp;
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, "if(") : (unsigned int)1;
3630 for(exp = (*stmt->__anon1.ifStmt.exp).first; exp; exp = exp->next)
3632 OutputExpression(exp, f);
3635 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3637 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3638 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3640 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3641 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3642 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3646 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3648 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3649 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3651 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3652 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3653 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")\n") : (unsigned int)1;
3656 if(stmt->__anon1.ifStmt.stmt)
3657 OutputStatement(stmt->__anon1.ifStmt.stmt, f);
3658 if(stmt->__anon1.ifStmt.elseStmt)
3661 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3663 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3664 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3666 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3667 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3668 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
3672 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3674 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3675 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3677 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3678 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3679 __internal_VirtualMethod ? __internal_VirtualMethod(f, "else") : (unsigned int)1;
3681 if(stmt->__anon1.ifStmt.elseStmt->type != 4)
3684 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3686 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3687 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3689 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3690 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3691 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
3697 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3699 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3700 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3702 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3703 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3704 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3706 OutputStatement(stmt->__anon1.ifStmt.elseStmt, f);
3712 struct Expression * exp;
3715 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3717 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3718 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3720 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3721 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3722 __internal_VirtualMethod ? __internal_VirtualMethod(f, "switch(") : (unsigned int)1;
3724 if(stmt->__anon1.switchStmt.exp)
3726 for(exp = (*stmt->__anon1.switchStmt.exp).first; exp; exp = exp->next)
3728 OutputExpression(exp, f);
3731 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3733 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3734 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3736 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3737 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3738 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3743 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3745 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3746 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3748 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3749 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3750 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")\n") : (unsigned int)1;
3753 OutputStatement(stmt->__anon1.switchStmt.stmt, f);
3758 struct Expression * exp;
3761 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3763 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3764 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3766 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3767 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3768 __internal_VirtualMethod ? __internal_VirtualMethod(f, "while(") : (unsigned int)1;
3770 if(stmt->__anon1.switchStmt.exp)
3772 for(exp = (*stmt->__anon1.switchStmt.exp).first; exp; exp = exp->next)
3774 OutputExpression(exp, f);
3777 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3779 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3780 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3782 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3783 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3784 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3789 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3791 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3792 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3794 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3795 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3796 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")\n") : (unsigned int)1;
3799 OutputStatement(stmt->__anon1.whileStmt.stmt, f);
3804 struct Expression * exp;
3807 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3809 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3810 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3812 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3813 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3814 __internal_VirtualMethod ? __internal_VirtualMethod(f, "do\n") : (unsigned int)1;
3817 OutputStatement(stmt->__anon1.whileStmt.stmt, 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, "while(") : (unsigned int)1;
3828 for(exp = (*stmt->__anon1.switchStmt.exp).first; exp; exp = exp->next)
3830 OutputExpression(exp, f);
3833 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3835 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3836 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3838 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3839 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3840 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3844 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3846 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3847 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3849 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3850 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3851 __internal_VirtualMethod ? __internal_VirtualMethod(f, ");") : (unsigned int)1;
3857 struct Expression * exp;
3860 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3862 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3863 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3865 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3866 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3867 __internal_VirtualMethod ? __internal_VirtualMethod(f, "for(") : (unsigned int)1;
3869 OutputStatement(stmt->__anon1.forStmt.init, f);
3871 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3873 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3874 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3876 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3877 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3878 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3880 OutputStatement(stmt->__anon1.forStmt.check, f);
3882 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3884 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3885 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3887 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3888 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3889 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
3891 if(stmt->__anon1.forStmt.increment)
3893 if(inCompiler && outputLineNumbers && stmt->loc.end.line)
3895 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", stmt->loc.end.line, name);
3898 for(exp = (*stmt->__anon1.forStmt.increment).first; exp; exp = exp->next)
3900 OutputExpression(exp, f);
3903 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3905 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3906 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3908 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3909 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3910 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
3915 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3917 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3918 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3920 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3921 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3922 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")\n") : (unsigned int)1;
3925 OutputStatement(stmt->__anon1.forStmt.stmt, f);
3931 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3933 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3934 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3936 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3937 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3938 __internal_VirtualMethod ? __internal_VirtualMethod(f, "goto ") : (unsigned int)1;
3940 OutputIdentifier(stmt->__anon1.gotoStmt.id, f);
3942 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3944 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3945 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3947 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3948 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3949 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
3955 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3957 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3958 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3960 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3961 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3962 __internal_VirtualMethod ? __internal_VirtualMethod(f, "continue;") : (unsigned int)1;
3967 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
3969 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
3970 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
3972 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
3973 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
3974 __internal_VirtualMethod ? __internal_VirtualMethod(f, "break;") : (unsigned int)1;
3979 struct Expression * exp;
3981 if(inCompiler && memoryGuard)
3983 struct Expression * exp = stmt->__anon1.expressions ? (*stmt->__anon1.expressions).last : (((void *)0));
3984 struct Type * returnType = exp ? (exp->destType ? exp->destType : exp->expType) : (((void *)0));
3986 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "{ ");
3987 if(returnType && returnType->kind != 0)
3989 char string[1024] = "";
3990 struct __ecereNameSpace__ecere__sys__OldList * specs = MkList();
3991 struct Declarator * decl;
3992 struct TypeName * typeName;
3994 if(returnType->kind == 20)
3996 if(returnType->__anon1.templateParameter->dataTypeString)
3997 decl = SpecDeclFromString(returnType->__anon1.templateParameter->dataTypeString, specs, MkDeclaratorIdentifier(MkIdentifier("__ecereReturnVal")));
3998 else if(returnType->__anon1.templateParameter->__anon1.dataType)
4000 (__ecereNameSpace__ecere__com__eSystem_Delete(specs), specs = 0);
4001 specs = CopyList(returnType->__anon1.templateParameter->__anon1.dataType->specifiers, (void *)(CopySpecifier));
4002 decl = PlugDeclarator(returnType->__anon1.templateParameter->__anon1.dataType->decl, MkDeclaratorIdentifier(MkIdentifier("__ecereReturnVal")));
4006 ListAdd(specs, MkSpecifierName("uint64"));
4007 decl = MkDeclaratorIdentifier(MkIdentifier("__ecereReturnVal"));
4012 if(returnType->passAsTemplate)
4013 strcpy(string, "uint64");
4015 PrintType(returnType, string, returnType->kind == 18 ? 1 : 0, 1);
4016 decl = SpecDeclFromString(string, specs, MkDeclaratorIdentifier(MkIdentifier("__ecereReturnVal")));
4018 typeName = MkTypeName(specs, decl);
4019 InstDeclPassTypeName(typeName, 0);
4020 OutputTypeName(typeName, f, 0);
4021 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, ";");
4022 FreeTypeName(typeName);
4027 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4029 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4030 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4032 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4033 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4034 __internal_VirtualMethod ? __internal_VirtualMethod(f, "return ") : (unsigned int)1;
4038 struct Expression * exp = stmt->__anon1.expressions ? (*stmt->__anon1.expressions).last : (((void *)0));
4040 if(exp && exp->expType && exp->expType->kind != 0)
4041 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "__ecereReturnVal = ");
4043 if(stmt->__anon1.expressions)
4045 for(exp = (*stmt->__anon1.expressions).first; exp; exp = exp->next)
4047 OutputExpression(exp, f);
4050 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4052 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4053 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4055 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4056 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4057 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4062 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4064 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4065 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4067 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4068 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4069 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
4071 if(inCompiler && memoryGuard)
4073 struct Expression * exp = stmt->__anon1.expressions ? (struct Expression *)(*stmt->__anon1.expressions).last : (((void *)0));
4075 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, " __ecereNameSpace__ecere__com__MemoryGuard_PopLoc();");
4076 if(exp && exp->expType && exp->expType->kind != 0)
4077 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "return __ecereReturnVal;");
4079 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "return;");
4080 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "}");
4086 struct AsmField * field;
4089 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4091 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4092 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4094 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4095 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4096 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__asm__ ") : (unsigned int)1;
4098 if(stmt->__anon1.asmStmt.spec)
4099 OutputSpecifier(stmt->__anon1.asmStmt.spec, f, 0);
4101 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4103 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4104 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4106 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4107 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4108 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
4111 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4113 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4114 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4116 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4117 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4118 __internal_VirtualMethod ? __internal_VirtualMethod(f, stmt->__anon1.asmStmt.statements) : (unsigned int)1;
4120 if(stmt->__anon1.asmStmt.inputFields || stmt->__anon1.asmStmt.outputFields || stmt->__anon1.asmStmt.clobberedFields)
4123 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4125 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4126 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4128 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4129 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4130 __internal_VirtualMethod ? __internal_VirtualMethod(f, ":") : (unsigned int)1;
4132 if(stmt->__anon1.asmStmt.inputFields)
4134 for(field = (*stmt->__anon1.asmStmt.inputFields).first; field; field = field->next)
4138 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4140 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4141 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4143 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4144 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4145 __internal_VirtualMethod ? __internal_VirtualMethod(f, ",") : (unsigned int)1;
4147 OutputAsmField(field, f);
4151 if(stmt->__anon1.asmStmt.outputFields || stmt->__anon1.asmStmt.clobberedFields)
4154 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4156 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4157 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4159 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4160 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4161 __internal_VirtualMethod ? __internal_VirtualMethod(f, ":") : (unsigned int)1;
4163 if(stmt->__anon1.asmStmt.outputFields)
4165 for(field = (*stmt->__anon1.asmStmt.outputFields).first; field; field = field->next)
4169 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4171 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4172 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4174 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4175 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4176 __internal_VirtualMethod ? __internal_VirtualMethod(f, ",") : (unsigned int)1;
4178 OutputAsmField(field, f);
4182 if(stmt->__anon1.asmStmt.clobberedFields)
4185 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4187 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4188 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4190 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4191 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4192 __internal_VirtualMethod ? __internal_VirtualMethod(f, ":") : (unsigned int)1;
4194 for(field = (*stmt->__anon1.asmStmt.clobberedFields).first; field; field = field->next)
4198 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4200 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4201 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4203 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4204 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4205 __internal_VirtualMethod ? __internal_VirtualMethod(f, ",") : (unsigned int)1;
4207 OutputAsmField(field, f);
4211 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4213 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4214 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4216 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4217 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4218 __internal_VirtualMethod ? __internal_VirtualMethod(f, ");\n") : (unsigned int)1;
4224 if(inCompiler && outputLineNumbers && stmt->loc.start.line)
4226 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", outputLine + 2, origName);
4231 void OutputTree(struct __ecereNameSpace__ecere__sys__OldList * ast, struct __ecereNameSpace__ecere__com__Instance * f)
4233 struct External * external;
4236 for(external = ast->first; external; external = external->next)
4238 switch(external->type)
4241 OutputFunction(external->__anon1.function, f);
4243 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4245 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4246 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4248 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4249 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4250 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4255 if(external->__anon1.declaration)
4256 OutputDeclaration(external->__anon1.declaration, 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;
4270 OutputClass(external->__anon1._class, f);
4272 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4274 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4275 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4277 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4278 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4279 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4287 void OutputExternal(struct External * external, struct __ecereNameSpace__ecere__com__Instance * f)
4289 switch(external->type)
4292 OutputFunction(external->__anon1.function, f);
4294 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4296 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4297 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4299 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4300 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4301 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4306 if(external->__anon1.declaration)
4307 OutputDeclaration(external->__anon1.declaration, 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;
4321 OutputClass(external->__anon1._class, f);
4323 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4325 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4326 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4328 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4329 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4330 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
4337 void OutputExpression(struct Expression * exp, struct __ecereNameSpace__ecere__com__Instance * f)
4343 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4345 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4346 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4348 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4349 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4350 __internal_VirtualMethod ? __internal_VirtualMethod(f, "class(") : (unsigned int)1;
4352 if(exp->__anon1._classExp.specifiers)
4354 struct Specifier * spec;
4356 for(spec = (*exp->__anon1._classExp.specifiers).first; spec; spec = spec->next)
4358 OutputSpecifier(spec, f, 0);
4361 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4363 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4364 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4366 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4367 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4368 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4371 if(exp->__anon1._classExp.decl)
4374 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4376 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4377 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4379 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4380 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4381 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4383 OutputDeclarator(exp->__anon1._classExp.decl, f);
4386 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4388 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4389 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4391 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4392 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4393 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4399 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4401 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4402 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4404 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4405 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4406 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__extension__ (") : (unsigned int)1;
4408 OutputStatement(exp->__anon1.compound, f);
4410 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4412 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4413 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4415 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4416 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4417 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4419 if(inCompiler && outputLineNumbers && exp->loc.end.line)
4421 char name[274] = "";
4423 GetSourceName(name, exp->loc.end.included ? GetIncludeFileFromID(exp->loc.end.included) : (((void *)0)));
4424 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "\n#line %d \"%s\"\n", exp->loc.end.line, name);
4430 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4432 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4433 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4435 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4436 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4437 __internal_VirtualMethod ? __internal_VirtualMethod(f, "new ") : (unsigned int)1;
4440 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4442 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4443 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4445 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4446 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4447 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4449 OutputTypeName(exp->__anon1._renew.typeName, f, 0);
4451 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4453 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4454 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4456 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4457 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4458 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4460 OutputExpression(exp->__anon1._renew.size, f);
4462 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4464 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4465 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4467 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4468 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4469 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4474 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4476 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4477 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4479 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4480 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4481 __internal_VirtualMethod ? __internal_VirtualMethod(f, "new0 ") : (unsigned int)1;
4484 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4486 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4487 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4489 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4490 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4491 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4493 OutputTypeName(exp->__anon1._renew.typeName, f, 0);
4495 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4497 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4498 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4500 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4501 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4502 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4504 OutputExpression(exp->__anon1._renew.size, f);
4506 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4508 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4509 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4511 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4512 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4513 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4518 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4520 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4521 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4523 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4524 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4525 __internal_VirtualMethod ? __internal_VirtualMethod(f, "renew ") : (unsigned int)1;
4527 OutputExpression(exp->__anon1._renew.exp, f);
4529 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4531 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4532 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4534 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4535 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4536 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4538 OutputTypeName(exp->__anon1._renew.typeName, f, 0);
4540 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4542 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4543 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4545 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4546 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4547 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4549 OutputExpression(exp->__anon1._renew.size, f);
4551 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4553 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4554 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4556 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4557 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4558 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4563 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4565 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4566 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4568 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4569 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4570 __internal_VirtualMethod ? __internal_VirtualMethod(f, "renew0 ") : (unsigned int)1;
4572 OutputExpression(exp->__anon1._renew.exp, f);
4574 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4576 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4577 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4579 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4580 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4581 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4583 OutputTypeName(exp->__anon1._renew.typeName, f, 0);
4585 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4587 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4588 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4590 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4591 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4592 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4594 OutputExpression(exp->__anon1._renew.size, f);
4596 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4598 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4599 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4601 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4602 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4603 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4607 if(exp->__anon1.__anon1.identifier)
4608 OutputIdentifier(exp->__anon1.__anon1.identifier, f);
4611 if(exp->__anon1.instance)
4612 OutputInstance(exp->__anon1.instance, f);
4615 if(exp->__anon1.__anon1.constant)
4617 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4619 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4620 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4622 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4623 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4624 __internal_VirtualMethod ? __internal_VirtualMethod(f, exp->__anon1.__anon1.constant) : (unsigned int)1;
4628 if(exp->__anon1.__anon2.string)
4630 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4632 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4633 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4635 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4636 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4637 __internal_VirtualMethod ? __internal_VirtualMethod(f, exp->__anon1.__anon2.string) : (unsigned int)1;
4641 if(exp->__anon1.op.exp1)
4643 OutputExpression(exp->__anon1.op.exp1, f);
4644 if(exp->__anon1.op.exp2)
4646 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4648 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4649 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4651 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4652 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4653 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4656 OutputOperator(exp->__anon1.op.op, f);
4657 if(exp->__anon1.op.exp2)
4659 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))
4661 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4663 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4664 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4666 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4667 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4668 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
4670 OutputExpression(exp->__anon1.op.exp2, f);
4676 struct Expression * expression;
4680 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4682 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4683 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4685 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4686 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4687 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__extension__ ") : (unsigned int)1;
4690 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4692 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4693 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4695 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4696 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4697 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
4699 if(exp->__anon1.list)
4701 for(expression = (*exp->__anon1.list).first; expression; expression = expression->next)
4703 OutputExpression(expression, f);
4704 if(expression->next)
4706 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4708 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4709 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4711 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4712 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4713 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4718 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4720 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4721 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4723 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4724 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4725 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4731 struct Expression * expression;
4733 if(exp->__anon1.index.exp)
4734 OutputExpression(exp->__anon1.index.exp, f);
4736 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4738 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4739 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4741 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4742 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4743 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
4745 if(exp->__anon1.index.index)
4746 for(expression = (*exp->__anon1.index.index).first; expression; expression = expression->next)
4748 OutputExpression(expression, f);
4749 if(expression->next)
4751 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4753 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4754 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4756 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4757 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4758 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4762 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4764 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4765 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4767 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4768 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4769 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
4775 OutputExpression(exp->__anon1.call.exp, f);
4777 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4779 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4780 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4782 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4783 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4784 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
4786 if(exp->__anon1.call.arguments)
4788 struct Expression * expression;
4790 for(expression = (*exp->__anon1.call.arguments).first; expression; expression = expression->next)
4792 OutputExpression(expression, f);
4793 if(expression->next)
4795 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4797 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4798 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4800 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4801 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4802 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4807 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4809 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4810 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4812 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4813 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4814 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4819 if(exp->__anon1.member.exp)
4820 OutputExpression(exp->__anon1.member.exp, f);
4822 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4824 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4825 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4827 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4828 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4829 __internal_VirtualMethod ? __internal_VirtualMethod(f, ".") : (unsigned int)1;
4831 if(exp->__anon1.member.member)
4832 OutputIdentifier(exp->__anon1.member.member, f);
4835 OutputExpression(exp->__anon1.member.exp, f);
4837 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4839 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4840 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4842 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4843 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4844 __internal_VirtualMethod ? __internal_VirtualMethod(f, "->") : (unsigned int)1;
4846 OutputIdentifier(exp->__anon1.member.member, f);
4850 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4852 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4853 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4855 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4856 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4857 __internal_VirtualMethod ? __internal_VirtualMethod(f, "sizeof(") : (unsigned int)1;
4859 OutputTypeName(exp->__anon1.typeName, f, 0);
4861 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4863 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4864 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4866 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4867 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4868 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4873 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4875 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4876 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4878 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4879 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4880 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__alignof__(") : (unsigned int)1;
4882 OutputTypeName(exp->__anon1.typeName, f, 0);
4884 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4886 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4887 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4889 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4890 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4891 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4896 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4898 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4899 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4901 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4902 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4903 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__builtin_offsetof(") : (unsigned int)1;
4905 if(exp->__anon1.typeName)
4906 OutputTypeName(exp->__anon1.typeName, f, 0);
4908 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4910 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4911 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4913 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4914 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4915 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
4917 if(exp->__anon1.__anon1.identifier)
4918 OutputIdentifier(exp->__anon1.__anon1.identifier, f);
4920 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4922 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4923 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4925 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4926 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4927 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4932 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4934 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4935 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4937 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4938 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4939 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__extension__ (") : (unsigned int)1;
4941 if(exp->__anon1.initializer.typeName)
4942 OutputTypeName(exp->__anon1.initializer.typeName, f, 0);
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 if(exp->__anon1.initializer.initializer)
4954 OutputInitializer(exp->__anon1.initializer.initializer, f);
4958 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4960 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4961 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4963 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4964 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4965 __internal_VirtualMethod ? __internal_VirtualMethod(f, "(") : (unsigned int)1;
4967 OutputTypeName(exp->__anon1.cast.typeName, f, 0);
4969 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4971 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4972 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4974 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4975 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4976 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
4978 if(exp->__anon1.cast.exp)
4979 OutputExpression(exp->__anon1.cast.exp, f);
4982 OutputExpression(exp->__anon1.cond.cond, f);
4984 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
4986 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
4987 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
4989 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
4990 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
4991 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ? ") : (unsigned int)1;
4994 struct Expression * expression;
4996 for(expression = (*exp->__anon1.cond.exp).first; expression; expression = expression->next)
4998 OutputExpression(expression, f);
4999 if(expression->next)
5001 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5003 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5004 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5006 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5007 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5008 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
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, " : ") : (unsigned int)1;
5022 if(exp->__anon1.cond.elseExp)
5023 OutputExpression(exp->__anon1.cond.elseExp, f);
5027 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5029 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5030 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5032 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5033 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5034 __internal_VirtualMethod ? __internal_VirtualMethod(f, "__builtin_va_arg(") : (unsigned int)1;
5036 OutputExpression(exp->__anon1.vaArg.exp, f);
5038 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5040 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5041 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5043 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5044 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5045 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
5047 OutputTypeName(exp->__anon1.vaArg.typeName, f, 0);
5049 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5051 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5052 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5054 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5055 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5056 __internal_VirtualMethod ? __internal_VirtualMethod(f, ")") : (unsigned int)1;
5061 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5063 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5064 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5066 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5067 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5068 __internal_VirtualMethod ? __internal_VirtualMethod(f, "[") : (unsigned int)1;
5070 if(exp->__anon1.list)
5072 struct Expression * expression;
5074 for(expression = (*exp->__anon1.list).first; expression; expression = expression->next)
5076 OutputExpression(expression, f);
5077 if(expression->next)
5079 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5081 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5082 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5084 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5085 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5086 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
5091 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5093 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5094 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5096 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5097 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5098 __internal_VirtualMethod ? __internal_VirtualMethod(f, "]") : (unsigned int)1;
5104 static void OutputFunction(struct FunctionDefinition * func, struct __ecereNameSpace__ecere__com__Instance * f)
5106 struct FunctionDefinition * oldFunc = curFunction;
5109 if(func->specifiers)
5111 struct Specifier * spec;
5113 for(spec = (*func->specifiers).first; spec; spec = spec->next)
5115 OutputSpecifier(spec, f, 0);
5118 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5120 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5121 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5123 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5124 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5125 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
5129 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5131 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5132 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5134 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5135 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5136 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
5139 if(func->declarator)
5140 OutputDeclarator(func->declarator, f);
5142 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5144 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5145 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5147 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5148 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5149 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5152 if(func->declarations)
5154 struct Declaration * decl;
5156 for(decl = (*func->declarations).first; decl; decl = decl->next)
5158 OutputDeclaration(decl, f);
5161 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5163 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5164 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5166 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5167 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5168 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5174 if(inCompiler && memoryGuard)
5176 char name[1024] = "";
5177 struct Identifier * id = GetDeclId(func->declarator);
5179 GetSourceName(name, func->loc.start.included ? GetIncludeFileFromID(func->loc.start.included) : (((void *)0)));
5180 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "{\n");
5181 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, " __ecereNameSpace__ecere__com__MemoryGuard_PushLoc(\"%s:%s\");\n", name, id->string);
5184 OutputStatement(func->body, f);
5185 if(inCompiler && memoryGuard)
5187 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, " __ecereNameSpace__ecere__com__MemoryGuard_PopLoc();\n");
5188 __ecereMethod___ecereNameSpace__ecere__sys__File_Printf(f, "}\n");
5192 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5194 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5195 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5197 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5198 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5199 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5203 curFunction = oldFunc;
5206 static void OutputClassFunction(struct ClassFunction * func, struct __ecereNameSpace__ecere__com__Instance * f)
5208 if(func->specifiers)
5210 struct Specifier * spec;
5212 for(spec = (*func->specifiers).first; spec; spec = spec->next)
5214 OutputSpecifier(spec, f, 0);
5217 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5219 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5220 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5222 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5223 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5224 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
5228 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5230 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5231 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5233 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5234 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5235 __internal_VirtualMethod ? __internal_VirtualMethod(f, " ") : (unsigned int)1;
5238 if(func->declarator)
5239 OutputDeclarator(func->declarator, f);
5241 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5243 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5244 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5246 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5247 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5248 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5251 if(func->declarations)
5253 struct Declaration * decl;
5255 for(decl = (*func->declarations).first; decl; decl = decl->next)
5257 OutputDeclaration(decl, f);
5260 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5262 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5263 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5265 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5266 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5267 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5273 OutputStatement(func->body, f);
5275 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5277 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5278 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5280 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5281 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5282 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5288 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5290 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5291 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5293 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5294 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5295 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";") : (unsigned int)1;
5299 void __ecereRegisterModule_output(struct __ecereNameSpace__ecere__com__Instance * module)
5301 struct __ecereNameSpace__ecere__com__Class __attribute__((unused)) * class;
5303 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("SetMemoryGuard", "void SetMemoryGuard(bool b)", SetMemoryGuard, module, 1);
5304 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("GetMemoryGuard", "bool GetMemoryGuard(void)", GetMemoryGuard, module, 1);
5305 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("OutputTypeName", "void OutputTypeName(TypeName type, ecere::sys::File f, bool typeName)", OutputTypeName, module, 1);
5306 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("OutputExpression", "void OutputExpression(Expression exp, ecere::sys::File f)", OutputExpression, module, 1);
5307 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("OutputTree", "void OutputTree(ecere::sys::OldList ast, ecere::sys::File f)", OutputTree, module, 1);
5308 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("OutputExternal", "void OutputExternal(External external, ecere::sys::File f)", OutputExternal, module, 1);
5309 __ecereNameSpace__ecere__com__eSystem_RegisterFunction("StringFromSpecDecl", "char * StringFromSpecDecl(ecere::sys::OldList specs, Declarator decl)", StringFromSpecDecl, module, 1);
5312 static void OutputMembersInit(struct MembersInit * init, struct __ecereNameSpace__ecere__com__Instance * f)
5318 struct MemberInit * member;
5320 if(init->__anon1.dataMembers)
5322 for(member = (*init->__anon1.dataMembers).first; member; member = member->next)
5324 OutputMemberInit(member, f);
5327 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5329 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5330 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5332 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5333 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5334 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
5341 OutputClassFunction(init->__anon1.function, f);
5346 static void OutputClassDef(struct ClassDef * def, struct __ecereNameSpace__ecere__com__Instance * f)
5351 if(def->__anon1.decl)
5353 OutputDeclaration(def->__anon1.decl, f);
5354 if(def->next && def->next->type != 2)
5357 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5359 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5360 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5362 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5363 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5364 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;
5372 struct MemberInit * init;
5374 for(init = (*def->__anon1.defProperties).first; init; init = init->next)
5376 OutputMemberInit(init, f);
5379 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5381 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5382 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5384 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5385 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5386 __internal_VirtualMethod ? __internal_VirtualMethod(f, ", ") : (unsigned int)1;
5390 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5392 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5393 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5395 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5396 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5397 __internal_VirtualMethod ? __internal_VirtualMethod(f, ";\n\n") : (unsigned int)1;
5403 OutputClassFunction(def->__anon1.function, f);
5405 unsigned int (* __internal_VirtualMethod)(struct __ecereNameSpace__ecere__com__Instance *, const char * string);
5407 __internal_VirtualMethod = ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char * string))__extension__ ({
5408 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
5410 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
5411 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts]);
5412 __internal_VirtualMethod ? __internal_VirtualMethod(f, "\n") : (unsigned int)1;