X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FKernel%2Finclude%2Flogdebug.h;h=0710c6bc2cae9d901bb36f79e4940e224761840f;hb=2462d860630674d10d554f86aa669163f6f2db6b;hp=340dda9b29db66cd7bb39d8ce9ed1db66d88ea3f;hpb=6cec03a9241ec39dec9347d1dcf634c393b33f20;p=tpg%2Facess2.git diff --git a/KernelLand/Kernel/include/logdebug.h b/KernelLand/Kernel/include/logdebug.h index 340dda9b..0710c6bc 100644 --- a/KernelLand/Kernel/include/logdebug.h +++ b/KernelLand/Kernel/include/logdebug.h @@ -10,6 +10,10 @@ #include +#ifndef NORETURN +#define NORETURN __attribute__((noreturn)) +#endif + // --- Logging --- /** * \name Logging to kernel ring buffer @@ -43,6 +47,7 @@ extern void Debug_Enter(const char *FuncName, const char *ArgTypes, ...); extern void Debug_Log(const char *FuncName, const char *Fmt, ...); extern void Debug_Leave(const char *FuncName, char RetType, ...); extern void Debug_HexDump(const char *Header, const void *Data, size_t Length); + #define UNIMPLEMENTED() Warning("'%s' unimplemented", __func__) #if DEBUG # define ENTER(_types...) Debug_Enter((char*)__func__, _types) @@ -59,7 +64,7 @@ extern void Debug_HexDump(const char *Header, const void *Data, size_t Length); #endif #if !DISABLE_ASSERTS # define ASSERTV(expr,msg,args...) do{if(!(expr))Panic("%s:%i - %s: Assertion '"#expr"' failed"msg,__FILE__,__LINE__,(char*)__func__,##args);}while(0) -# define ASSERTRV(expr,rv,msg,args...) do{if(!(expr)){Warning("%s:%i: Assertion '"#expr"' failed"msg,__FILE__,__LINE__,(char*)__func__ , ##args);return rv;}}while(0) +# define ASSERTRV(expr,rv,msg,args...) do{if(!(expr)){Warning("%s:%i - %s: Assertion '"#expr"' failed"msg,__FILE__,__LINE__,(char*)__func__ , ##args);return rv;}}while(0) #else # define ASSERTV(expr) # define ASSERTRV(expr)