Throughout, change __attribute__ ((regparm (N))) to just __regN. Throughout,
(mainly in fhandler*) start fixing gcc 4.7.2 mismatch between regparm definitions and declarations. * gendef: Define some functions to take @ declaration to accommodate _regN defines which use __stdcall. * gentls_offsets: Define __regN macros as empty. * autoload.cc (wsock_init): Remove unneeded regparm attribute. * winsup.h (__reg1): Define. (__reg2): Define. (__reg3): Define. * advapi32.cc (DuplicateTokenEx): Coerce some initializers to avoid warnings from gcc 4.7.2. * exceptions.cc (status_info): Declare struct to use NTSTATUS. (cygwin_exception::dump_exception): Coerce e->ExceptionCode to NTSTATUS. * fhandler_clipboard.cc (cygnativeformat): Redefine as UINT to avoid gcc 4.7.2 warnings. (fhandler_dev_clipboard::read): Ditto.
This commit is contained in:
@ -41,7 +41,7 @@ static BOOL WINAPI ctrl_c_handler (DWORD);
|
||||
|
||||
NO_COPY static struct
|
||||
{
|
||||
unsigned int code;
|
||||
NTSTATUS code;
|
||||
const char *name;
|
||||
} status_info[] =
|
||||
{
|
||||
@ -170,7 +170,7 @@ cygwin_exception::dump_exception ()
|
||||
{
|
||||
for (int i = 0; status_info[i].name; i++)
|
||||
{
|
||||
if (status_info[i].code == e->ExceptionCode)
|
||||
if (status_info[i].code == (NTSTATUS) e->ExceptionCode)
|
||||
{
|
||||
exception_name = status_info[i].name;
|
||||
break;
|
||||
@ -441,7 +441,7 @@ try_to_debug (bool waitloop)
|
||||
}
|
||||
|
||||
extern "C" void WINAPI RtlUnwind (void *, void *, PEXCEPTION_RECORD, void *);
|
||||
static void __stdcall rtl_unwind (exception_list *, PEXCEPTION_RECORD) __attribute__ ((noinline, regparm (3)));
|
||||
static void __reg3 rtl_unwind (exception_list *, PEXCEPTION_RECORD) __attribute__ ((noinline, ));
|
||||
void __stdcall
|
||||
rtl_unwind (exception_list *frame, PEXCEPTION_RECORD e)
|
||||
{
|
||||
|
Reference in New Issue
Block a user