1
0

Added Noreturn attribtes to a couple of functions and made a missing noreturn an error

This commit is contained in:
Tycho 2014-03-14 07:59:25 -07:00
parent 2f81c1d7fb
commit 8e11c270fc
4 changed files with 12 additions and 5 deletions

View File

@ -198,7 +198,7 @@ macro(set_exe_flags)
add_flags_cxx("-Wno-error=covered-switch-default -Wno-error=shadow")
add_flags_cxx("-Wno-error=exit-time-destructors -Wno-error=missing-variable-declarations")
add_flags_cxx("-Wno-error=global-constructors -Wno-implicit-fallthrough")
add_flags_cxx("-Wno-missing-noreturn -Wno-error=unreachable-code -Wno-error=undef")
add_flags_cxx("-Wno-error=unreachable-code -Wno-error=undef")
endif()
endif()

View File

@ -200,7 +200,7 @@ public:
void Push(const HTTPTemplateRequest * a_Request);
void Push(cTNTEntity * a_TNTEntity);
void Push(Vector3i * a_Vector);
void Push(void * a_Ptr);
NORETURNDEBUG void Push(void * a_Ptr);
void Push(cHopperEntity * a_Hopper);
void Push(cBlockEntity * a_BlockEntity);

View File

@ -60,7 +60,7 @@ protected:
void CheckWorldAge(const AString & a_WorldName, Int64 a_Age);
/// Called when a deadlock is detected. Aborts the server.
void DeadlockDetected(void);
NORETURN void DeadlockDetected(void);
} ;

View File

@ -46,7 +46,7 @@
#define SIZE_T_FMT_PRECISION(x) "%" #x "Iu"
#define SIZE_T_FMT_HEX "%Ix"
#define NORETURN __declspec(noreturn)
#define NORETURN __declspec(noreturn)
#elif defined(__GNUC__)
@ -72,7 +72,7 @@
#define SIZE_T_FMT_PRECISION(x) "%" #x "zu"
#define SIZE_T_FMT_HEX "%zx"
#define NORETURN __attribute((__noreturn__))
#define NORETURN __attribute((__noreturn__))
#else
@ -98,6 +98,13 @@
#endif
#ifdef _DEBUG
#define NORETURNDEBUG NORETURN
#else
#define NORETURNDEBUG
#endif
#include <stddef.h>