#if defined(__GNUC__)
typedef long long int64;
typedef unsigned long long uint64;
-#ifdef _WIN32
-#define stdcall __attribute__((__stdcall__))
-#else
-#define stdcall
+#ifndef _WIN32
#define __declspec(x)
#endif
#elif defined(__TINYC__)
#define strcasecmp stricmp
#define strncasecmp strnicmp
#define __declspec(x) __attribute__((x))
-#define stdcall __attribute__((__stdcall__))
#else
#define __declspec(x)
-#define stdcall
#endif
typedef long long int64;
typedef unsigned long long uint64;
#else
#define __ENDIAN_PAD(x) 0
#endif
-#include <stdint.h>
-#include <sys/types.h>
-
-#if /*defined(_W64) || */(defined(__WORDSIZE) && __WORDSIZE == 8) || defined(__x86_64__)
-#define _64BIT 1
+#if defined(_WIN32)
+# if defined(__GNUC__) || defined(__TINYC__)
+# define ecere_stdcall __attribute__((__stdcall__))
+# define ecere_gcc_struct __attribute__((gcc_struct))
+# else
+# define ecere_stdcall __stdcall
+# define ecere_gcc_struct
+# endif
#else
-#define _64BIT 0
+# define ecere_stdcall
+# define ecere_gcc_struct
#endif
-
-#define arch_PointerSize sizeof(void *)
-#define structSize_Instance (_64BIT ? 24 : 12)
-#define structSize_Module (_64BIT ? 560 : 300)
-#define structSize_BinaryTree (_64BIT ? 32 : 16)
-#define structSize_OldList (_64BIT ? 32 : 20)
-#define structSize_NamedLink64 (_64BIT ? 32 : 24)
-#define structSize_ClassTemplateArgument (_64BIT ? 16 : 8)
-#define structSize_ClassTemplateParameter (_64BIT ? 64 : 40)
-#define structSize_OldLink (_64BIT ? 24 : 12)
-#define structSize_BTNamedLink (_64BIT ? 48 : 24)
-#define structSize_Application (_64BIT ? 800 : 428)
-#define structSize_Watcher (_64BIT ? 32 : 16)
-#define structSize_SelfWatcher (_64BIT ? 32 : 16)
-#define structSize_GlobalFunction (_64BIT ? 72 : 36)
-#define structSize_DefinedExpression (_64BIT ? 40 : 20)
-#define structSize_BitMember (_64BIT ? 96 : 64)
-#define structSize_DataMember (_64BIT ? 160 : 96)
-#define structSize_ClassProperty (_64BIT ? 80 : 40)
-#define structSize_Method (_64BIT ? 96 : 52)
-#define structSize_Property (_64BIT ? 152 : 88)
-#define structSize_Class (_64BIT ? 624 : 376)
-
+#include <stdint.h>
+#include <sys/types.h>
void exit(int status);
void * calloc(size_t nmemb, size_t size);
double d;
long long i64;
uint64 ui64;
-} __attribute__ ((gcc_struct)) __anon1;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct __anon1;
+} ecere_gcc_struct;
static unsigned int __ecereNameSpace__ecere__com__TOTAL_MEM = 0;
static unsigned int __ecereNameSpace__ecere__com__memoryInitialized = 0;
+void __ecereNameSpace__ecere__com__CheckConsistency()
+{
+}
+
void __ecereNameSpace__ecere__com__CheckMemory()
{
}
unsigned int codePoint = 0;
int numBytes = 1;
int i;
-unsigned char mask = (unsigned char)0x7F;
+unsigned char mask = 0x7F;
-if(ch & (unsigned char)0x80)
+if(ch & 0x80)
{
-if(ch & (unsigned char)0x40)
+if(ch & 0x40)
{
mask >>= 2;
numBytes++;
-if(ch & (unsigned char)0x20)
+if(ch & 0x20)
{
numBytes++;
mask >>= 1;
-if(ch & (unsigned char)0x10)
+if(ch & 0x10)
{
-if(ch & (unsigned char)0x08)
+if(ch & 0x08)
return 0;
numBytes++;
mask >>= 1;
{
codePoint <<= 6;
codePoint |= ch & mask;
-mask = (unsigned char)0x3F;
+mask = 0x3F;
if(i > 1)
{
-if(!(ch & (unsigned char)0x80) || (ch & (unsigned char)0x40))
+if(!(ch & 0x80) || (ch & 0x40))
return 0;
}
}
{
int c;
int d = 0;
+unsigned char * byteDest = (unsigned char *)dest;
for(c = 0; source[c]; c++)
{
{
if(d + 1 >= max)
break;
-dest[d++] = (char)ch;
+byteDest[d++] = (char)ch;
}
else if(ch < 0x800)
{
if(d + 2 >= max)
break;
-dest[d++] = (unsigned char)0xC0 | (unsigned char)((ch & 0x7C0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xC0 | (unsigned char)((ch & 0x7C0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
else if(ch < 0x10000)
{
if(d + 3 >= max)
break;
-dest[d++] = (unsigned char)0xE0 | (unsigned char)((ch & 0xF000) >> 12);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0xFC0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xE0 | (unsigned char)((ch & 0xF000) >> 12);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0xFC0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
else
{
if(d + 4 >= max)
break;
-dest[d++] = (unsigned char)0xF0 | (unsigned char)((ch & 0x1C0000) >> 18);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0x3F000) >> 12);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0xFC0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xF0 | (unsigned char)((ch & 0x1C0000) >> 18);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0x3F000) >> 12);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0xFC0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
}
-dest[d] = (char)0;
+dest[d] = 0;
return d;
}
int c;
int d = 0;
unsigned short u16;
+unsigned char * byteDest = (unsigned char *)dest;
for(c = 0; (u16 = source[c]); c++)
{
unsigned int ch;
-if(u16 < (unsigned short)0xD800 || u16 > (unsigned short)0xDBFF)
+if(u16 < 0xD800 || u16 > 0xDBFF)
ch = u16;
else
ch = (u16 << 10) + source[c++] + (0x10000 - (0xD800 << 10) - 0xDC00);
{
if(d + 1 >= max)
break;
-dest[d++] = (char)ch;
+byteDest[d++] = (char)ch;
}
else if(ch < 0x800)
{
if(d + 2 >= max)
break;
-dest[d++] = (unsigned char)0xC0 | (unsigned char)((ch & 0x7C0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xC0 | (unsigned char)((ch & 0x7C0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
else if(ch < 0x10000)
{
if(d + 3 >= max)
break;
-dest[d++] = (unsigned char)0xE0 | (unsigned char)((ch & 0xF000) >> 12);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0xFC0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xE0 | (unsigned char)((ch & 0xF000) >> 12);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0xFC0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
else
{
if(d + 4 >= max)
break;
-dest[d++] = (unsigned char)0xF0 | (unsigned char)((ch & 0x1C0000) >> 18);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0x3F000) >> 12);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0xFC0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xF0 | (unsigned char)((ch & 0x1C0000) >> 18);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0x3F000) >> 12);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0xFC0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
}
-dest[d] = (char)0;
+byteDest[d] = 0;
return d;
}
unsigned int ch;
unsigned char b = ((unsigned char *)string)[0];
int i;
-unsigned char mask = (unsigned char)0x7F;
+unsigned char mask = 0x7F;
int nb = b ? 1 : 0;
ch = 0;
-if(b & (unsigned char)0x80)
+if(b & 0x80)
{
-if(b & (unsigned char)0x40)
+if(b & 0x40)
{
mask >>= 2;
nb++;
-if(b & (unsigned char)0x20)
+if(b & 0x20)
{
nb++;
mask >>= 1;
-if(b & (unsigned char)0x10)
+if(b & 0x10)
{
-if(b & (unsigned char)0x08)
+if(b & 0x08)
{
nb = 0;
}
{
ch <<= 6;
ch |= (b = ((unsigned char *)string)[i]) & mask;
-mask = (unsigned char)0x3F;
-if(i > 1 && (!(b & (unsigned char)0x80) || (b & (unsigned char)0x40)))
+mask = 0x3F;
+if(i > 1 && (!(b & 0x80) || (b & 0x40)))
{
nb = 0;
ch = 0;
unsigned int codePoint = 0;
int numBytes = 1;
int i;
-unsigned char mask = (unsigned char)0x7F;
+unsigned char mask = 0x7F;
-if(ch & (unsigned char)0x80 && ch & (unsigned char)0x40)
+if(ch & 0x80 && ch & 0x40)
{
mask >>= 2;
numBytes++;
-if(ch & (unsigned char)0x20)
+if(ch & 0x20)
{
numBytes++;
mask >>= 1;
-if(ch & (unsigned char)0x10)
+if(ch & 0x10)
{
numBytes++;
mask >>= 1;
{
codePoint <<= 6;
codePoint |= source[c++] & mask;
-mask = (unsigned char)0x3F;
+mask = 0x3F;
}
if(codePoint > 0xFFFF)
{
unsigned short lead = (unsigned short)((0xD800 - (0x10000 >> 10)) + (codePoint >> 10));
-unsigned short trail = (unsigned short)0xDC00 + (unsigned short)(codePoint & 0x3FF);
+unsigned short trail = (unsigned short)(0xDC00 | (codePoint & 0x3FF));
if(d >= max - 1)
break;
dest[d++] = (unsigned short)codePoint;
}
}
-dest[d] = (unsigned short)0;
+dest[d] = 0;
return d;
}
return 0;
int c;
int d = 0;
unsigned int ch;
+unsigned char * byteDest = (unsigned char *)dest;
for(c = 0; c < count && (ch = source[c]); c++)
{
{
if(d + 1 >= max)
break;
-dest[d++] = (char)ch;
+byteDest[d++] = (char)ch;
}
else if(ch < 0x800)
{
if(d + 2 >= max)
break;
-dest[d++] = (unsigned char)0xC0 | (unsigned char)((ch & 0x7C0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xC0 | (unsigned char)((ch & 0x7C0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
else if(ch < 0x10000)
{
if(d + 3 >= max)
break;
-dest[d++] = (unsigned char)0xE0 | (unsigned char)((ch & 0xF000) >> 12);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0xFC0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xE0 | (unsigned char)((ch & 0xF000) >> 12);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0xFC0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
else
{
if(d + 4 >= max)
break;
-dest[d++] = (unsigned char)0xF0 | (unsigned char)((ch & 0x1C0000) >> 18);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0x3F000) >> 12);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0xFC0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+byteDest[d++] = 0xF0 | (unsigned char)((ch & 0x1C0000) >> 18);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0x3F000) >> 12);
+byteDest[d++] = 0x80 | (unsigned char)((ch & 0xFC0) >> 6);
+byteDest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
}
-dest[d] = (char)0;
+byteDest[d] = 0;
return d;
}
int count;
unsigned int offset;
unsigned int circ;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__com__SerialBuffer
{
unsigned int count;
unsigned int _size;
unsigned int pos;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
extern void * memset(void * area, int value, size_t count);
extern double atof(const char * );
-extern int tolower(int);
-
-extern int toupper(int);
-
-extern unsigned int isdigit(int);
-
extern char * getenv(const char * name);
extern int rename(const char * oldpath, const char * newpath);
extern int fputs(const char * , void * stream);
+extern int tolower(int);
+
+extern int toupper(int);
+
+extern unsigned int isdigit(int);
+
+extern unsigned int isxdigit(int);
+
extern int isalnum(int c);
extern int isalpha(int c);
extern int isprint(int c);
+extern int isblank(int c);
+
int __ecereVMethodID_class_OnGetString;
const char * __ecereProp___ecereNameSpace__ecere__com__Platform_Get_char__PTR_(int this);
int c;
int d = 0;
int len;
-char * dest;
+unsigned char * dest;
unsigned short u16;
unsigned int invert = 0;
for(len = 0; source[len]; len++)
;
-dest = __ecereNameSpace__ecere__com__eSystem_New(sizeof(char) * (len * 3 + 1));
+dest = __ecereNameSpace__ecere__com__eSystem_New(sizeof(unsigned char) * (len * 3 + 1));
for(c = 0; (u16 = source[c]); c++)
{
unsigned int ch;
-if(!c && (u16 == (unsigned short)0xFFFE || u16 == (unsigned short)0xFEFF))
+if(!c && (u16 == 0xFFFE || u16 == 0xFEFF))
{
-if(u16 == (unsigned short)0xFFFE)
+if(u16 == 0xFFFE)
invert = 1;
continue;
}
if(invert)
{
-u16 = ((u16 & (unsigned short)0xFF00) >> (unsigned short)8) | ((u16 & (unsigned short)0x00FF) << (unsigned short)8);
+u16 = ((u16 & 0xFF00) >> 8) | ((u16 & 0x00FF) << 8);
}
-if(u16 < (unsigned short)0xD800 || u16 > (unsigned short)0xDBFF)
+if(u16 < 0xD800 || u16 > 0xDBFF)
ch = u16;
else
ch = (u16 << 10) + source[c++] + (0x10000 - (0xD800 << 10) - 0xDC00);
}
else if(ch < 0x800)
{
-dest[d++] = (unsigned char)0xC0 | (unsigned char)((ch & 0x7C0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+dest[d++] = 0xC0 | (unsigned char)((ch & 0x7C0) >> 6);
+dest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
else if(ch < 0x10000)
{
-dest[d++] = (unsigned char)0xE0 | (unsigned char)((ch & 0xF000) >> 12);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0xFC0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+dest[d++] = 0xE0 | (unsigned char)((ch & 0xF000) >> 12);
+dest[d++] = 0x80 | (unsigned char)((ch & 0xFC0) >> 6);
+dest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
else
{
-dest[d++] = (unsigned char)0xF0 | (unsigned char)((ch & 0x1C0000) >> 18);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0x3F000) >> 12);
-dest[d++] = (unsigned char)0x80 | (unsigned char)((ch & 0xFC0) >> 6);
-dest[d++] = (unsigned char)0x80 | (unsigned char)(ch & 0x03F);
+dest[d++] = 0xF0 | (unsigned char)((ch & 0x1C0000) >> 18);
+dest[d++] = 0x80 | (unsigned char)((ch & 0x3F000) >> 12);
+dest[d++] = 0x80 | (unsigned char)((ch & 0xFC0) >> 6);
+dest[d++] = 0x80 | (unsigned char)(ch & 0x03F);
}
}
-dest[d] = (char)0;
-dest = __ecereNameSpace__ecere__com__eSystem_Renew(dest, sizeof(char) * (d + 1));
-return dest;
+dest[d] = 0;
+dest = __ecereNameSpace__ecere__com__eSystem_Renew(dest, sizeof(unsigned char) * (d + 1));
+return (char *)dest;
}
unsigned int __ecereNameSpace__ecere__com__LocateModule(const char * name, const char * fileName)
{
struct __ecereNameSpace__ecere__sys__OldList values;
long long largest;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
void __ecereMethod___ecereNameSpace__ecere__sys__OldList_Delete(struct __ecereNameSpace__ecere__sys__OldList * this, void * item);
unsigned int codePoint = 0;
int numBytes = 1;
int i;
-unsigned char mask = (unsigned char)0x7F;
+unsigned char mask = 0x7F;
-if(ch & (unsigned char)0x80 && ch & (unsigned char)0x40)
+if(ch & 0x80 && ch & 0x40)
{
mask >>= 2;
numBytes++;
-if(ch & (unsigned char)0x20)
+if(ch & 0x20)
{
numBytes++;
mask >>= 1;
-if(ch & (unsigned char)0x10)
+if(ch & 0x10)
{
numBytes++;
mask >>= 1;
{
codePoint <<= 6;
codePoint |= source[c++] & mask;
-mask = (unsigned char)0x3F;
+mask = 0x3F;
}
if(codePoint > 0xFFFF)
{
unsigned short lead = (unsigned short)((0xD800 - (0x10000 >> 10)) + (codePoint >> 10));
-unsigned short trail = (unsigned short)0xDC00 + (unsigned short)(codePoint & 0x3FF);
+unsigned short trail = (unsigned short)(0xDC00 | (codePoint & 0x3FF));
dest[d++] = lead;
dest[d++] = trail;
dest[d++] = (unsigned short)codePoint;
}
}
-dest[d] = (unsigned short)0;
+dest[d] = 0;
if(wordCount)
*wordCount = d;
return dest;
void * * _vTbl;
struct __ecereNameSpace__ecere__com__Class * _class;
int _refCount;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
void * __ecereNameSpace__ecere__com__eInstance_New(struct __ecereNameSpace__ecere__com__Class * _class);
struct __ecereNameSpace__ecere__com__Instance * classDesigner;
const char * objectClass;
unsigned int isDragging;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
int __ecereVMethodID___ecereNameSpace__ecere__com__ClassDesignerBase_Reset;
struct __ecereNameSpace__ecere__com__BTNamedLink * parent, * left, * right;
int depth;
void * data;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__com__SelfWatcher;
const char * category;
unsigned int compiled;
unsigned int selfWatchable, isWatchable;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
int __ecereVMethodID___ecereNameSpace__ecere__com__ClassDesignerBase_FixProperty;
struct __ecereNameSpace__ecere__com__SelfWatcher * prev, * next;
void (* callback)(void *);
struct __ecereNameSpace__ecere__com__Property * _property;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
static __attribute__((unused)) struct __ecereNameSpace__ecere__com__Property * __ecereProp___ecereNameSpace__ecere__com__Class_char__PTR_, * __ecerePropM___ecereNameSpace__ecere__com__Class_char__PTR_;
int numBlocks;
unsigned int totalSize;
unsigned int usedSpace;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__com__MemPart
{
int blocksUsed;
int size;
struct __ecereNameSpace__ecere__com__BlockPool * pool;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
static struct __ecereNameSpace__ecere__com__BlockPool * __ecereNameSpace__ecere__com__pools;
struct __ecereNameSpace__ecere__com__MemBlock * prev, * next;
struct __ecereNameSpace__ecere__com__MemPart * part;
unsigned int size;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
unsigned int __ecereMethod___ecereNameSpace__ecere__com__BlockPool_Expand(struct __ecereNameSpace__ecere__com__BlockPool * this, unsigned int numBlocks)
{
__ecereNameSpace__ecere__com__TOTAL_MEM += size - newBlock->size;
__ecereNameSpace__ecere__com__OUTSIDE_MEM += size - newBlock->size;
newPointer = ((struct __ecereNameSpace__ecere__com__MemBlock *)newBlock + 1);
+newBlock->size = size;
}
}
}
static void * __ecereNameSpace__ecere__com___crealloc(void * pointer, unsigned int size)
{
if(!size)
+{
+__ecereNameSpace__ecere__com___free(pointer);
return (((void *)0));
+}
pointer = __ecereNameSpace__ecere__com___mycrealloc(pointer, size);
return pointer ? ((unsigned char *)pointer + 0) : (((void *)0));
}
struct __ecereNameSpace__ecere__sys__BTNode * left;
struct __ecereNameSpace__ecere__sys__BTNode * right;
int depth;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__sys__BTNode * __ecereProp___ecereNameSpace__ecere__sys__BTNode_Get_next(struct __ecereNameSpace__ecere__sys__BTNode * this);
struct __ecereNameSpace__ecere__sys__OldLink * prev;
struct __ecereNameSpace__ecere__sys__OldLink * next;
void * data;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__sys__OldLink * __ecereMethod___ecereNameSpace__ecere__sys__OldList_FindLink(struct __ecereNameSpace__ecere__sys__OldList * this, void * data);
struct __ecereNameSpace__ecere__sys__NamedLink64 * next;
char * name;
long long data;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
static void __ecereNameSpace__ecere__com__FreeEnumValue(struct __ecereNameSpace__ecere__sys__NamedLink64 * value)
{
const char * dataTypeString;
struct __ecereNameSpace__ecere__com__Instance * dataType;
int memberAccess;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__com__ObjectInfo;
struct __ecereNameSpace__ecere__com__Instance * classDefinition;
unsigned int modified;
void * i18nStrings;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
int __ecereVMethodID___ecereNameSpace__ecere__com__DesignerBase_RenameObject;
int size;
int pos;
uint64 mask;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__com__ClassProperty;
const char * dataTypeString;
struct __ecereNameSpace__ecere__com__Instance * dataType;
unsigned int constant;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__com__Watcher;
struct __ecereNameSpace__ecere__com__Watcher * prev, * next;
void (* callback)(void *, void *);
struct __ecereNameSpace__ecere__com__Instance * object;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
void __ecereNameSpace__ecere__com__eInstance_Watch(void * instance, struct __ecereNameSpace__ecere__com__Property * _property, void * object, void (* callback)(void *, void *))
{
const char * name;
const char * value;
struct __ecereNameSpace__ecere__com__NameSpace * nameSpace;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__sys__BinaryTree;
int count;
int (* CompareKey)(struct __ecereNameSpace__ecere__sys__BinaryTree * tree, uintptr_t a, uintptr_t b);
void (* FreeKey)(void * key);
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__com__NameSpace
{
struct __ecereNameSpace__ecere__sys__BinaryTree classes;
struct __ecereNameSpace__ecere__sys__BinaryTree defines;
struct __ecereNameSpace__ecere__sys__BinaryTree functions;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__sys__BTNode * __ecereProp___ecereNameSpace__ecere__sys__BinaryTree_Get_first(struct __ecereNameSpace__ecere__sys__BinaryTree * this);
struct __ecereNameSpace__ecere__sys__OldList allModules;
char * parsedCommand;
struct __ecereNameSpace__ecere__com__NameSpace systemNameSpace;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
static void __ecereNameSpace__ecere__com__NameSpace_Free(struct __ecereNameSpace__ecere__com__NameSpace * parentNameSpace)
{
int origImportType;
struct __ecereNameSpace__ecere__com__NameSpace privateNameSpace;
struct __ecereNameSpace__ecere__com__NameSpace publicNameSpace;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
static struct __ecereNameSpace__ecere__com__BTNamedLink * __ecereNameSpace__ecere__com__SearchNameSpace(struct __ecereNameSpace__ecere__com__NameSpace * nameSpace, const char * name, void * listOffset)
{
int memberOffset;
short structAlignment;
short pointerAlignment;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
struct __ecereNameSpace__ecere__com__ClassTemplateArgument
{
{
const char * dataTypeString;
struct __ecereNameSpace__ecere__com__Class * dataTypeClass;
-} __attribute__ ((gcc_struct)) __anon1;
+} ecere_gcc_struct __anon1;
struct __ecereNameSpace__ecere__com__DataValue expression;
struct
{
struct __ecereNameSpace__ecere__com__DataMember * member;
struct __ecereNameSpace__ecere__com__Property * prop;
struct __ecereNameSpace__ecere__com__Method * method;
-} __attribute__ ((gcc_struct)) __anon1;
-} __attribute__ ((gcc_struct)) __anon2;
-} __attribute__ ((gcc_struct)) __anon1;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct __anon1;
+} ecere_gcc_struct __anon2;
+} ecere_gcc_struct __anon1;
+} ecere_gcc_struct;
static void __ecereNameSpace__ecere__com__DataMember_Free(struct __ecereNameSpace__ecere__com__DataMember * parentMember)
{
if(pointerAlignment)
alignment = sizeof(void *);
-if(pointerAlignment && member->structAlignment <= (short)4)
-member->pointerAlignment = (short)1;
+if(pointerAlignment && member->structAlignment <= 4)
+member->pointerAlignment = 1;
else if(!pointerAlignment && alignment >= 8)
-member->pointerAlignment = (short)0;
+member->pointerAlignment = 0;
member->structAlignment = (__simpleStruct0 = member->structAlignment, (__simpleStruct0 > alignment) ? __simpleStruct0 : alignment);
if(member->memberOffset % alignment)
member->memberOffset += alignment - (member->memberOffset % alignment);
int numParams;
unsigned int isInstanceClass;
unsigned int byValueSystemClass;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
static struct __ecereNameSpace__ecere__com__Class * __ecereClass___ecereNameSpace__ecere__com__Angle;
__ecereNameSpace__ecere__com__FixOffsets(deriv->data);
}
-struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_AddDataMember(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, const char * type, unsigned int size, unsigned int alignment, int declMode)
-{
-if(_class && name)
-{
-if(!__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_FindString(&_class->members, name))
-{
-struct __ecereNameSpace__ecere__com__DataMember * dataMember;
-
-if(alignment)
-{
-short __simpleStruct0;
-unsigned int pointerAlignment = alignment == 0xF000F000;
-
-if(pointerAlignment)
-alignment = sizeof(void *);
-if(pointerAlignment && _class->structAlignment <= (short)4)
-_class->pointerAlignment = (short)1;
-else if(!pointerAlignment && alignment >= 8)
-_class->pointerAlignment = (short)0;
-_class->structAlignment = (__simpleStruct0 = _class->structAlignment, (__simpleStruct0 > alignment) ? __simpleStruct0 : alignment);
-if(_class->memberOffset % alignment)
-_class->memberOffset += alignment - (_class->memberOffset % alignment);
-}
-dataMember = __extension__ ({
-struct __ecereNameSpace__ecere__com__DataMember * __ecereInstance1 = __ecereNameSpace__ecere__com__eSystem_New0(sizeof(struct __ecereNameSpace__ecere__com__DataMember));
-
-__ecereInstance1->name = __ecereNameSpace__ecere__sys__CopyString(name), __ecereInstance1->dataTypeString = __ecereNameSpace__ecere__sys__CopyString(type), __ecereInstance1->id = _class->memberID++, __ecereInstance1->_class = _class, __ecereInstance1->offset = _class->memberOffset, __ecereInstance1->memberOffset = size, __ecereInstance1->memberAccess = declMode, __ecereInstance1->membersAlpha.CompareKey = (void *)__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_CompareString, __ecereInstance1;
-});
-__ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(&_class->membersAndProperties, dataMember);
-_class->memberOffset += size;
-__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_Add(&_class->members, (struct __ecereNameSpace__ecere__sys__BTNode *)__extension__ ({
-struct __ecereNameSpace__ecere__com__BTNamedLink * __ecereInstance1 = __ecereNameSpace__ecere__com__eSystem_New0(sizeof(struct __ecereNameSpace__ecere__com__BTNamedLink));
-
-__ecereInstance1->name = dataMember->name, __ecereInstance1->data = dataMember, __ecereInstance1;
-}));
-return dataMember;
-}
-}
-return (((void *)0));
-}
-
void __ecereNameSpace__ecere__com__eEnum_AddFixedValue(struct __ecereNameSpace__ecere__com__Class * _class, const char * string, long long value)
{
if(_class && _class->type == 4)
if(method->vid >= _class->vTblSize)
printf("error: virtual methods overriding failure\n");
else
-_class->_vTbl[method->vid] = function ? function : __ecereNameSpace__ecere__com__DefaultFunction;
+_class->_vTbl[method->vid] = function ? function : (void *)__ecereNameSpace__ecere__com__DefaultFunction;
for(deriv = _class->derivatives.first; deriv; deriv = deriv->next)
{
struct __ecereNameSpace__ecere__com__Class * derivClass = deriv->data;
if(dataMember->name && __ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_FindString(&addTo->membersAlpha, dataMember->name))
{
__ecereNameSpace__ecere__com__DataMember_Free(dataMember);
-((dataMember ? (__ecereClass___ecereNameSpace__ecere__com__DataMember->Destructor ? __ecereClass___ecereNameSpace__ecere__com__DataMember->Destructor((void *)dataMember) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(dataMember)) : 0), dataMember = 0);
+((dataMember ? __extension__ ({
+void * __ecerePtrToDelete = (dataMember);
+
+__ecereClass___ecereNameSpace__ecere__com__DataMember->Destructor ? __ecereClass___ecereNameSpace__ecere__com__DataMember->Destructor((void *)__ecerePtrToDelete) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(__ecerePtrToDelete);
+}) : 0), dataMember = 0);
return 0;
}
__ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(&addTo->members, dataMember);
addTo->memberID += 1;
else
addTo->memberID += dataMember->memberID;
-if(dataMember->pointerAlignment && dataMember->structAlignment <= (short)4)
-addTo->pointerAlignment = (short)1;
-else if(!dataMember->pointerAlignment && dataMember->structAlignment >= (short)8)
-addTo->pointerAlignment = (short)0;
+if(dataMember->pointerAlignment && dataMember->structAlignment <= 4)
+addTo->pointerAlignment = 1;
+else if(!dataMember->pointerAlignment && dataMember->structAlignment >= 8)
+addTo->pointerAlignment = 0;
addTo->structAlignment = (__simpleStruct0 = addTo->structAlignment, __simpleStruct1 = dataMember->structAlignment, (__simpleStruct0 > __simpleStruct1) ? __simpleStruct0 : __simpleStruct1);
dataMember->offset = (addTo->type == 1) ? 0 : addTo->memberOffset;
if(dataMember->structAlignment)
if(!_class || _class->comRedefinition || (dataMember->name && __ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_FindString(&_class->members, dataMember->name)))
{
__ecereNameSpace__ecere__com__DataMember_Free(dataMember);
-((dataMember ? (__ecereClass___ecereNameSpace__ecere__com__DataMember->Destructor ? __ecereClass___ecereNameSpace__ecere__com__DataMember->Destructor((void *)dataMember) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(dataMember)) : 0), dataMember = 0);
+((dataMember ? __extension__ ({
+void * __ecerePtrToDelete = (dataMember);
+
+__ecereClass___ecereNameSpace__ecere__com__DataMember->Destructor ? __ecereClass___ecereNameSpace__ecere__com__DataMember->Destructor((void *)__ecerePtrToDelete) : 0, __ecereNameSpace__ecere__com__eSystem_Delete(__ecerePtrToDelete);
+}) : 0), dataMember = 0);
return 0;
}
__ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(&_class->membersAndProperties, dataMember);
}));
__ecereNameSpace__ecere__com__SetMemberClass(dataMember, _class);
dataMember->id = _class->memberID;
-if(dataMember->pointerAlignment && dataMember->structAlignment <= (short)4)
-_class->pointerAlignment = (short)1;
-else if(!dataMember->pointerAlignment && dataMember->structAlignment >= (short)8)
-_class->pointerAlignment = (short)0;
+if(dataMember->pointerAlignment && dataMember->structAlignment <= 4)
+_class->pointerAlignment = 1;
+else if(!dataMember->pointerAlignment && dataMember->structAlignment >= 8)
+_class->pointerAlignment = 0;
_class->structAlignment = (__simpleStruct0 = _class->structAlignment, __simpleStruct1 = dataMember->structAlignment, (__simpleStruct0 > __simpleStruct1) ? __simpleStruct0 : __simpleStruct1);
if(dataMember->type == 1)
_class->memberID += 1;
if(method->vid >= _class->vTblSize)
printf("error: virtual methods overriding failure\n");
else
-_class->_vTbl[method->vid] = function ? function : __ecereNameSpace__ecere__com__DefaultFunction;
+_class->_vTbl[method->vid] = function ? function : (void *)__ecereNameSpace__ecere__com__DefaultFunction;
}
else
base = (((void *)0));
__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_Add(&_class->methods, (struct __ecereNameSpace__ecere__sys__BTNode *)method);
_class->_vTbl = __ecereNameSpace__ecere__com__eSystem_Renew(_class->_vTbl, sizeof(void *) * (_class->vTblSize));
-_class->_vTbl[method->vid] = function ? function : __ecereNameSpace__ecere__com__DefaultFunction;
+_class->_vTbl[method->vid] = function ? function : (void *)__ecereNameSpace__ecere__com__DefaultFunction;
if(_class->derivatives.first || _class->templatized.first)
__ecereNameSpace__ecere__com__FixDerivativeVirtualMethod(_class, name, method->vid, function ? function : (void *)__ecereNameSpace__ecere__com__DefaultFunction, type);
return method;
(*this) = (void *)theClass;
}
+struct __ecereNameSpace__ecere__com__DataMember * __ecereNameSpace__ecere__com__eClass_AddDataMember(struct __ecereNameSpace__ecere__com__Class * _class, const char * name, const char * type, unsigned int size, unsigned int alignment, int declMode)
+{
+if(_class && name)
+{
+if(!__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_FindString(&_class->members, name))
+{
+struct __ecereNameSpace__ecere__com__DataMember * dataMember;
+
+if(alignment)
+{
+short __simpleStruct0;
+unsigned int pointerAlignment = alignment == 0xF000F000;
+unsigned int force64Bits = (((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Module *)(((char *)_class->module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application + sizeof(struct __ecereNameSpace__ecere__com__Module) + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->isGUIApp & 2) ? 1 : 0;
+unsigned int force32Bits = (((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Module *)(((char *)_class->module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application + sizeof(struct __ecereNameSpace__ecere__com__Module) + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->isGUIApp & 4) ? 1 : 0;
+
+if((force32Bits || force64Bits) && !strcmp(_class->name, "AVLNode") && !strcmp(name, "__ecerePrivateData0"))
+{
+if(force64Bits)
+{
+type = "byte[32]";
+size = 32;
+}
+if(force32Bits)
+{
+type = "byte[16]";
+size = 16;
+}
+}
+if(pointerAlignment)
+alignment = sizeof(void *);
+if(pointerAlignment && _class->structAlignment <= 4)
+_class->pointerAlignment = 1;
+else if(!pointerAlignment && alignment >= 8)
+_class->pointerAlignment = 0;
+_class->structAlignment = (__simpleStruct0 = _class->structAlignment, (__simpleStruct0 > alignment) ? __simpleStruct0 : alignment);
+if(_class->memberOffset % alignment)
+_class->memberOffset += alignment - (_class->memberOffset % alignment);
+}
+dataMember = __extension__ ({
+struct __ecereNameSpace__ecere__com__DataMember * __ecereInstance1 = __ecereNameSpace__ecere__com__eSystem_New0(sizeof(struct __ecereNameSpace__ecere__com__DataMember));
+
+__ecereInstance1->name = __ecereNameSpace__ecere__sys__CopyString(name), __ecereInstance1->dataTypeString = __ecereNameSpace__ecere__sys__CopyString(type), __ecereInstance1->id = _class->memberID++, __ecereInstance1->_class = _class, __ecereInstance1->offset = _class->memberOffset, __ecereInstance1->memberOffset = size, __ecereInstance1->memberAccess = declMode, __ecereInstance1->membersAlpha.CompareKey = (void *)__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_CompareString, __ecereInstance1;
+});
+__ecereMethod___ecereNameSpace__ecere__sys__OldList_Add(&_class->membersAndProperties, dataMember);
+_class->memberOffset += size;
+__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_Add(&_class->members, (struct __ecereNameSpace__ecere__sys__BTNode *)__extension__ ({
+struct __ecereNameSpace__ecere__com__BTNamedLink * __ecereInstance1 = __ecereNameSpace__ecere__com__eSystem_New0(sizeof(struct __ecereNameSpace__ecere__com__BTNamedLink));
+
+__ecereInstance1->name = dataMember->name, __ecereInstance1->data = dataMember, __ecereInstance1;
+}));
+return dataMember;
+}
+}
+return (((void *)0));
+}
+
static void __ecereNameSpace__ecere__com__Application_Destructor(struct __ecereNameSpace__ecere__com__Instance * app)
{
if(((struct __ecereNameSpace__ecere__com__Application *)(((char *)app + sizeof(struct __ecereNameSpace__ecere__com__Module) + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->parsedCommand)
((struct __ecereNameSpace__ecere__com__Instance *)(char *)instance)->_vTbl = __ecereNameSpace__ecere__com___malloc(sizeof(void *) * ((struct __ecereNameSpace__ecere__com__Instance *)(char *)instance)->_class->vTblSize);
memcpy(((struct __ecereNameSpace__ecere__com__Instance *)(char *)instance)->_vTbl, ((struct __ecereNameSpace__ecere__com__Instance *)(char *)instance)->_class->_vTbl, sizeof(int (*)()) * ((struct __ecereNameSpace__ecere__com__Instance *)(char *)instance)->_class->vTblSize);
}
-((struct __ecereNameSpace__ecere__com__Instance *)(char *)instance)->_vTbl[method->vid] = function ? function : __ecereNameSpace__ecere__com__DefaultFunction;
+((struct __ecereNameSpace__ecere__com__Instance *)(char *)instance)->_vTbl[method->vid] = function ? function : (void *)__ecereNameSpace__ecere__com__DefaultFunction;
}
}
}
struct __ecereNameSpace__ecere__com__SubModule * prev, * next;
struct __ecereNameSpace__ecere__com__Instance * module;
int importMode;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
static struct __ecereNameSpace__ecere__com__BTNamedLink * __ecereNameSpace__ecere__com__SearchModule(struct __ecereNameSpace__ecere__com__Instance * module, const char * name, void * listOffset, unsigned int searchPrivate)
{
const char * dataTypeString;
struct __ecereNameSpace__ecere__com__Instance * dataType;
void * symbol;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
void __ecereNameSpace__ecere__com__eInstance_Evolve(struct __ecereNameSpace__ecere__com__Instance ** instancePtr, struct __ecereNameSpace__ecere__com__Class * _class)
{
{
const char * dataTypeString;
int memberType;
-} __attribute__ ((gcc_struct)) __anon1;
+} ecere_gcc_struct __anon1;
struct __ecereNameSpace__ecere__com__ClassTemplateArgument defaultArg;
void * param;
-} __attribute__ ((gcc_struct));
+} ecere_gcc_struct;
static void __ecereNameSpace__ecere__com__FreeTemplateArg(struct __ecereNameSpace__ecere__com__Class * template, struct __ecereNameSpace__ecere__com__ClassTemplateParameter * param, int id)
{
while(*end == ' ')
end--;
strncpy(ident, paramStart, end + 1 - paramStart);
-ident[end + 1 - paramStart] = (char)0;
+ident[end + 1 - paramStart] = 0;
for(sClass = _class; sClass; sClass = sClass->base)
{
if(sClass->templateClass)
while(*equal == ' ')
equal++;
memcpy(value, equal, paramEnd - equal);
-value[paramEnd - equal] = (char)0;
+value[paramEnd - equal] = 0;
}
else
{
memcpy(value, paramStart, paramEnd - paramStart);
-value[paramEnd - paramStart] = (char)0;
+value[paramEnd - paramStart] = 0;
}
__ecereNameSpace__ecere__sys__TrimRSpaces(value, value);
switch(curParam->type)
offsetClass = base ? (base->templateClass ? base->templateClass->sizeClass : base->sizeClass) : (type == 5 ? 0 : 0);
totalSizeClass = offsetClass + sizeClass;
if(type == 0 || type == 5)
-_class->offset = (base && (base->templateClass ? base->templateClass->structSize : base->structSize) && base->type != 1000) ? (base->templateClass ? base->templateClass->structSize : base->structSize) : ((type == 5) ? 0 : sizeof(struct __ecereNameSpace__ecere__com__Instance));
+_class->offset = (base && (base->templateClass ? (type == 0 ? base->templateClass->structSize : base->templateClass->memberOffset) : (type == 0 ? base->structSize : base->memberOffset)) && base->type != 1000) ? (base->templateClass ? base->templateClass->structSize : base->structSize) : ((type == 5) ? 0 : sizeof(struct __ecereNameSpace__ecere__com__Instance));
else
_class->offset = 0;
if(type == 1)
}
_class->memberID = _class->startMemberID = (base && (type == 0 || type == 5 || type == 1)) ? base->memberID : 0;
if(type == 0 || type == 5)
-_class->offset = (base && base->structSize && base->type != 1000) ? base->structSize : ((type == 5) ? 0 : ((force64Bits && inCompiler && fixed) ? 24 : (force32Bits && inCompiler && fixed) ? 12 : sizeof(struct __ecereNameSpace__ecere__com__Instance)));
+_class->offset = (base && base->structSize && base->type != 1000) ? (base->type == 0 ? base->structSize : base->memberOffset) : ((type == 5) ? 0 : ((force64Bits && inCompiler && fixed) ? 24 : (force32Bits && inCompiler && fixed) ? 12 : sizeof(struct __ecereNameSpace__ecere__com__Instance)));
else
_class->offset = 0;
if(crossBits)
if(!strcmp(name, "ecere::sys::FileListing"))
{
size = 3 * (force32Bits ? 4 : 8);
-_class->structAlignment = force32Bits ? (short)4 : (short)8;
-_class->pointerAlignment = (short)1;
+_class->structAlignment = force32Bits ? 4 : 8;
+_class->pointerAlignment = 1;
}
else if(!strcmp(name, "ecere::com::Class"))
size = 0;
static struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com__Module_Load(struct __ecereNameSpace__ecere__com__Instance * fromModule, const char * name, int importAccess, unsigned int ensureCOM)
{
-unsigned int (stdcall * Load)(struct __ecereNameSpace__ecere__com__Instance * module) = (((void *)0));
-unsigned int (stdcall * Unload)(struct __ecereNameSpace__ecere__com__Instance * module) = (((void *)0));
+unsigned int (ecere_stdcall * Load)(struct __ecereNameSpace__ecere__com__Instance * module) = (((void *)0));
+unsigned int (ecere_stdcall * Unload)(struct __ecereNameSpace__ecere__com__Instance * module) = (((void *)0));
struct __ecereNameSpace__ecere__com__Instance * module;
for(module = ((struct __ecereNameSpace__ecere__com__Application *)(((char *)((struct __ecereNameSpace__ecere__com__Module *)(((char *)fromModule + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->application + sizeof(struct __ecereNameSpace__ecere__com__Module) + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->allModules.first; module; module = ((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->next)
}
else
{
-char * libLocation = (((void *)0));
+const char * libLocation = (((void *)0));
library = Instance_Module_Load(libLocation, name, (void *)(&Load), (void *)(&Unload));
}
int len = (int)strlen(moduleName) - 3;
memmove(moduleName, moduleName + 3, len);
-moduleName[len] = (char)0;
+moduleName[len] = 0;
}
((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->name = __ecereNameSpace__ecere__sys__CopyString(moduleName);
}
}
else
{
-unsigned int (stdcall * Unload)(struct __ecereNameSpace__ecere__com__Instance * module) = (void *)((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->Unload;
+unsigned int (ecere_stdcall * Unload)(struct __ecereNameSpace__ecere__com__Instance * module) = (void *)((struct __ecereNameSpace__ecere__com__Module *)(((char *)module + sizeof(struct __ecereNameSpace__ecere__com__Instance))))->Unload;
Unload(module);
}
if(_class->nameSpace)
{
struct __ecereNameSpace__ecere__com__BTNamedLink * classLink = (struct __ecereNameSpace__ecere__com__BTNamedLink *)__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_FindString(&(*_class->nameSpace).classes, _class->name);
+
+if(classLink)
+{
struct __ecereNameSpace__ecere__sys__OldLink * t;
for(t = _class->templatized.first; t; t = t->next)
template->nameSpace = (((void *)0));
}
__ecereMethod___ecereNameSpace__ecere__sys__BinaryTree_Delete(&(*_class->nameSpace).classes, (struct __ecereNameSpace__ecere__sys__BTNode *)classLink);
+}
_class->nameSpace = (((void *)0));
}
_class->module = (((void *)0));
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("system", "int system(const char*)", system, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("atoi", "int atoi(const char*)", atoi, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("atof", "double atof(const char*)", atof, module, 4);
-__ecereNameSpace__ecere__com__eSystem_RegisterFunction("tolower", "int tolower(int)", tolower, module, 4);
-__ecereNameSpace__ecere__com__eSystem_RegisterFunction("toupper", "int toupper(int)", toupper, module, 4);
-__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isdigit", "bool isdigit(int)", isdigit, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("memset", "void * memset(void * area, int value, uintsize count)", memset, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("getenv", "char * getenv(const char * name)", getenv, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("rename", "int rename(const char *oldpath, const char *newpath)", rename, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("vsnprintf", "int vsnprintf(char*, uintsize, const char*, __builtin_va_list)", vsnprintf, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("puts", "int puts(const char *)", puts, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("fputs", "int fputs(const char *, void * stream)", fputs, module, 4);
+__ecereNameSpace__ecere__com__eSystem_RegisterFunction("tolower", "int tolower(int)", tolower, module, 4);
+__ecereNameSpace__ecere__com__eSystem_RegisterFunction("toupper", "int toupper(int)", toupper, module, 4);
+__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isdigit", "bool isdigit(int)", isdigit, module, 4);
+__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isxdigit", "bool isxdigit(int)", isxdigit, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isalnum", "int isalnum(int c)", isalnum, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isspace", "int isspace(int c)", isspace, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isalpha", "int isalpha(int c)", isalpha, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("islower", "int islower(int c)", islower, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isupper", "int isupper(int c)", isupper, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isprint", "int isprint(int c)", isprint, module, 4);
+__ecereNameSpace__ecere__com__eSystem_RegisterFunction("isblank", "int isblank(int c)", isblank, module, 4);
}
struct __ecereNameSpace__ecere__com__Instance * __ecereNameSpace__ecere__com____ecere_COM_Initialize(unsigned int guiApp, int argc, char * argv[])
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::log2i", "uint ecere::com::log2i(uint number)", __ecereNameSpace__ecere__com__log2i, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::pow2i", "uint ecere::com::pow2i(uint number)", __ecereNameSpace__ecere__com__pow2i, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::memswap", "void ecere::com::memswap(byte * a, byte * b, uint size)", __ecereNameSpace__ecere__com__memswap, module, 4);
+__ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::CheckConsistency", "void ecere::com::CheckConsistency(void)", __ecereNameSpace__ecere__com__CheckConsistency, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::CheckMemory", "void ecere::com::CheckMemory(void)", __ecereNameSpace__ecere__com__CheckMemory, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::eSystem_RegisterClass", "ecere::com::Class ecere::com::eSystem_RegisterClass(ecere::com::ClassType type, const char * name, const char * baseName, int size, int sizeClass, bool (* Constructor)(void *), void (* Destructor)(void *), ecere::com::Module module, ecere::com::AccessMode declMode, ecere::com::AccessMode inheritanceAccess)", __ecereNameSpace__ecere__com__eSystem_RegisterClass, module, 4);
__ecereNameSpace__ecere__com__eSystem_RegisterFunction("ecere::com::eClass_Unregister", "void ecere::com::eClass_Unregister(ecere::com::Class _class)", __ecereNameSpace__ecere__com__eClass_Unregister, module, 4);