Author: pschweitzer Date: Sun May 4 18:10:08 2014 New Revision: 63161
URL: http://svn.reactos.org/svn/reactos?rev=63161&view=rev Log: [PSEH3] Kill -Wdeclaration-after-statement when it's required.
PSEH tests are still green
Modified: trunk/reactos/include/reactos/libs/pseh/pseh3.h
Modified: trunk/reactos/include/reactos/libs/pseh/pseh3.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/include/reactos/libs/pseh/p... ============================================================================== --- trunk/reactos/include/reactos/libs/pseh/pseh3.h [iso-8859-1] (original) +++ trunk/reactos/include/reactos/libs/pseh/pseh3.h [iso-8859-1] Sun May 4 18:10:08 2014 @@ -346,6 +346,9 @@ (void)&&_SEH3$_l_BeforeFilterOrFinally; \ (void)&&_SEH3$_l_FilterOrFinally; \ \ +_Pragma("GCC diagnostic ignored "-Wdeclaration-after-statement"") \ +_Pragma("GCC diagnostic push") \ +\ /* Count the try level. Outside of any __try, _SEH3$_TryLevel is 0 */ \ enum { \ _SEH3$_PreviousTryLevel = _SEH3$_TryLevel, \ @@ -358,6 +361,8 @@ /* Allocate a registration frame */ \ volatile SEH3$_REGISTRATION_FRAME _SEH3$_AUTO_CLEANUP _SEH3$_TrylevelFrame; \ \ +_Pragma("GCC diagnostic pop") \ +\ goto _SEH3$_l_BeforeTry; \ /* Silence warning */ goto _SEH3$_l_AfterTry; \ \ @@ -374,11 +379,16 @@ _SEH3$_l_BeforeTry: (void)0; \ _SEH3$_ASM_GOTO(_SEH3$_l_OnException); \ \ +_Pragma("GCC diagnostic ignored "-Wdeclaration-after-statement"") \ +_Pragma("GCC diagnostic push") \ +\ /* Forward declaration of the filter function */ \ _SEH3$_DECLARE_FILTER_FUNC(_SEH3$_FilterFunction); \ \ /* Create a static data table that contains the jump target and filter function */ \ static const SEH3$_SCOPE_TABLE _SEH3$_ScopeTable = { &&_SEH3$_l_HandlerTarget, _SEH3$_FILTER(&_SEH3$_FilterFunction, (__VA_ARGS__)), _SEH3$_TryLevel, _SEH3$_HANDLER_TYPE }; \ +\ +_Pragma("GCC diagnostic pop") \ \ /* Register the registration record. */ \ if (_SEH3$_TryLevel == 1) _SEH3$_RegisterFrame_(&_SEH3$_TrylevelFrame, &_SEH3$_ScopeTable); \ @@ -387,8 +397,13 @@ /* Define an empty inline finally function */ \ _SEH3$_DEFINE_DUMMY_FINALLY(_SEH3$_FinallyFunction) \ \ +_Pragma("GCC diagnostic ignored "-Wdeclaration-after-statement"") \ +_Pragma("GCC diagnostic push") \ +\ /* Allow intrinsics for __except to be used */ \ _SEH3$_DECLARE_EXCEPT_INTRINSICS(); \ +\ +_Pragma("GCC diagnostic pop") \ \ goto _SEH3$_l_DoTry; \ \ @@ -422,11 +437,16 @@ _SEH3$_l_BeforeTry: (void)0; \ _SEH3$_ASM_GOTO(_SEH3$_l_OnException); \ \ +_Pragma("GCC diagnostic ignored "-Wdeclaration-after-statement"") \ +_Pragma("GCC diagnostic push") \ +\ /* Forward declaration of the finally function */ \ _SEH3$_DECLARE_FILTER_FUNC(_SEH3$_FinallyFunction); \ \ /* Create a static data table that contains the finally function */ \ static const SEH3$_SCOPE_TABLE _SEH3$_ScopeTable = { 0, _SEH3$_FINALLY(&_SEH3$_FinallyFunction), _SEH3$_TryLevel, _SEH3$_HANDLER_TYPE }; \ +\ +_Pragma("GCC diagnostic pop") \ \ /* Register the registration record. */ \ if (_SEH3$_TryLevel == 1) _SEH3$_RegisterFrame_(&_SEH3$_TrylevelFrame, &_SEH3$_ScopeTable); \