[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Tinycc-devel] Before TinyCC supports __declspec(noreturn) and __attribu
From: |
Timo VJ Lähde |
Subject: |
[Tinycc-devel] Before TinyCC supports __declspec(noreturn) and __attribute__ ((__nothrow__)) |
Date: |
Wed, 31 Mar 2010 21:40:37 +0300 |
Latest mob and win32 have problems with those __attribute etc:
-------------------------------------------------------------
Before TinyCC supports __declspec(noreturn) and __attribute__
((__nothrow__))
This patch don't help /win32/include/winapi/winnt.h:3103: error: too many
basic types.
-------------------------------------------------------------
--- a\win32\include\setjmp.h Mon Mar 15 23:51:00 2010
+++ b\win32\include\setjmp.h Wed Mar 31 19:03:44 2010
@@ -130,27 +130,27 @@
#define _JMP_BUF_DEFINED
#endif
- void * __cdecl __attribute__ ((__nothrow__)) mingw_getsp(void);
+ void * __cdecl __MINGW_NOTHROW mingw_getsp(void);
#ifdef USE_MINGW_SETJMP_TWO_ARGS
#ifndef _INC_SETJMPEX
#define setjmp(BUF) _setjmp((BUF),mingw_getsp())
- int __cdecl __attribute__ ((__nothrow__)) _setjmp(jmp_buf _Buf,void
*_Ctx);
+ int __cdecl __MINGW_NOTHROW _setjmp(jmp_buf _Buf,void *_Ctx);
#else
#undef setjmp
#define setjmp(BUF) _setjmpex((BUF),mingw_getsp())
#define setjmpex(BUF) _setjmpex((BUF),mingw_getsp())
- int __cdecl __attribute__ ((__nothrow__)) _setjmpex(jmp_buf _Buf,void
*_Ctx);
+ int __cdecl __MINGW_NOTHROW _setjmpex(jmp_buf _Buf,void *_Ctx);
#endif
#else
#ifndef _INC_SETJMPEX
#define setjmp _setjmp
#endif
- int __cdecl __attribute__ ((__nothrow__)) setjmp(jmp_buf _Buf);
+ int __cdecl __MINGW_NOTHROW setjmp(jmp_buf _Buf);
#endif
- __declspec(noreturn) __attribute__ ((__nothrow__)) void __cdecl
ms_longjmp(jmp_buf _Buf,int _Value)/* throw(...)*/;
- __declspec(noreturn) __attribute__ ((__nothrow__)) void __cdecl
longjmp(jmp_buf _Buf,int _Value);
+ __MINGW_ATTRIB_NORETURN __MINGW_NOTHROW void __cdecl ms_longjmp(jmp_buf
_Buf,int _Value)/* throw(...)*/;
+ __MINGW_ATTRIB_NORETURN __MINGW_NOTHROW void __cdecl longjmp(jmp_buf
_Buf,int _Value);
#ifdef __cplusplus
}
-------------------------------------------------------------
With weak symbol patch crash when compiling chkstk.S
-------------------------------------------------------------
--- a\libtcc.c Mon Mar 15 22:51:00 2010
+++ b\libtcc.c Wed Mar 17 12:07:06 2010
@@ -425,7 +425,7 @@
if (sym->type.t & VT_STATIC)
sym_bind = STB_LOCAL;
else {
- if (FUNC_WEAK(sym->type.ref->r))
+ if (sym->type.ref && FUNC_WEAK(sym->type.ref->r))
sym_bind = STB_WEAK;
else
sym_bind = STB_GLOBAL;
-------------------------------------------------------------
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Tinycc-devel] Before TinyCC supports __declspec(noreturn) and __attribute__ ((__nothrow__)),
Timo VJ Lähde <=