Changeset 141


Ignore:
Timestamp:
Oct 24, 2006, 12:40:32 AM (19 years ago)
Author:
dmik
Message:

Compiling: Fixed broken release builds by appliying a better workaround for the Innotek GCC compiler bug related to attribute((system)) processing (see http://svn.netlabs.org/libc/ticket/129 for more details).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/qt_os2.h

    r139 r141  
    7777    static ERR libcHandler;
    7878
    79     static ULONG APIENTRY handler( PEXCEPTIONREPORTRECORD pReportRec,
    80                                    PEXCEPTIONREGISTRATIONRECORD pRegRec,
    81                                    PCONTEXTRECORD pContextRec,
    82                                    PVOID pv );
     79    // @todo (r=dmik) Inntotek GCC/kLIBC v0.6.1 and earlier have a problem with
     80    // __attribute__((__system__)) (see http://svn.netlabs.org/libc/ticket/129)
     81    // so we have to temporarily comment out APIENTRY below, based on the fact
     82    // that the OS/2 _System calling convention corresponds to cdecl in terms
     83    // of argument order and stack cleanup. Once it's fixed, this should be
     84    // guarded by #if __INNOTEK_LIBC__<=0x006...
     85    static ULONG /* APIENTRY */ handler( PEXCEPTIONREPORTRECORD pReportRec,
     86                                         PEXCEPTIONREGISTRATIONRECORD pRegRec,
     87                                         PCONTEXTRECORD pContextRec,
     88                                         PVOID pv );
    8389
    8490    friend class QtOS2SysXcptMainHandlerInternal;
    8591    friend class QThreadInstance;
    8692
    87     // these are private to allow only stack-based instances   
     93    // these are private to allow stack-based instances only   
    8894    QtOS2SysXcptMainHandler( QtOS2SysXcptMainHandler &/*that*/ ) {}
    8995    QtOS2SysXcptMainHandler &operator =( QtOS2SysXcptMainHandler &/*that*/) {
Note: See TracChangeset for help on using the changeset viewer.