X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=bertos%2Fcfg%2Fcompiler.h;h=bd60c6e79b74f534688c4816526126f835cb2ef7;hb=b8a137380f022b894587295607cc4dc3f0e7fb00;hp=5cacf1dca66fe20041b8e2fa0aa5133b66aad3d0;hpb=07e34b5dabbe1609ff848b2137ccbbff33619144;p=bertos.git diff --git a/bertos/cfg/compiler.h b/bertos/cfg/compiler.h index 5cacf1dc..bd60c6e7 100644 --- a/bertos/cfg/compiler.h +++ b/bertos/cfg/compiler.h @@ -190,6 +190,10 @@ #define DEPRECATED __attribute__((__deprecated__)) #endif + #if GNUC_PREREQ(4,5) + #define UNREACHABLE() __builtin_unreachable() + #endif + #ifndef __cplusplus #define ASSERT_TYPE_EQUAL(var1, var2) \ STATIC_ASSERT(__builtin_types_compatible_p(typeof(var1), typeof(var2))) @@ -323,6 +327,9 @@ #define MEMORY_BARRIER /* nothing */ #warning No memory barrier defined for select compiler. If you use the kernel check it. #endif +#ifndef UNREACHABLE +#define UNREACHABLE() for (;;) +#endif /* Misc definitions */