diff options
author | Brent Cook <busterb@gmail.com> | 2019-02-09 09:03:13 -0600 |
---|---|---|
committer | Brent Cook <busterb@gmail.com> | 2019-02-09 09:09:36 -0600 |
commit | 535246269d4a7d8338320f8e6666ca887718c5d0 (patch) | |
tree | fd55a3e75b39971bdbf00faba9bafddb83b885d2 | |
parent | 5535242ec1dc9bfcbef588f890b32201fcfc4a64 (diff) | |
download | portable-535246269d4a7d8338320f8e6666ca887718c5d0.tar.gz portable-535246269d4a7d8338320f8e6666ca887718c5d0.tar.bz2 portable-535246269d4a7d8338320f8e6666ca887718c5d0.zip |
add __dead__ annotation support
-rw-r--r-- | CMakeLists.txt | 1 | ||||
-rw-r--r-- | include/compat/sys/types.h | 8 | ||||
-rw-r--r-- | m4/check-os-options.m4 | 1 |
3 files changed, 10 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt index 4d54ada..a6a7554 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt | |||
@@ -49,6 +49,7 @@ endif() | |||
49 | 49 | ||
50 | if(CMAKE_SYSTEM_NAME MATCHES "OpenBSD") | 50 | if(CMAKE_SYSTEM_NAME MATCHES "OpenBSD") |
51 | add_definitions(-DHAVE_ATTRIBUTE__BOUNDED__) | 51 | add_definitions(-DHAVE_ATTRIBUTE__BOUNDED__) |
52 | add_definitions(-DHAVE_ATTRIBUTE__DEAD__) | ||
52 | endif() | 53 | endif() |
53 | 54 | ||
54 | if(CMAKE_SYSTEM_NAME MATCHES "Linux") | 55 | if(CMAKE_SYSTEM_NAME MATCHES "Linux") |
diff --git a/include/compat/sys/types.h b/include/compat/sys/types.h index dec09e3..4967843 100644 --- a/include/compat/sys/types.h +++ b/include/compat/sys/types.h | |||
@@ -49,6 +49,14 @@ typedef SSIZE_T ssize_t; | |||
49 | # define __bounded__(x, y, z) | 49 | # define __bounded__(x, y, z) |
50 | #endif | 50 | #endif |
51 | 51 | ||
52 | #if !defined(HAVE_ATTRIBUTE__DEAD) && !defined(__dead) | ||
53 | #ifdef _MSC_VER | ||
54 | #define __dead __declspec(noreturn) | ||
55 | #else | ||
56 | #define __dead __attribute__((__noreturn__)) | ||
57 | #endif | ||
58 | #endif | ||
59 | |||
52 | #ifdef _WIN32 | 60 | #ifdef _WIN32 |
53 | #define __warn_references(sym,msg) | 61 | #define __warn_references(sym,msg) |
54 | #else | 62 | #else |
diff --git a/m4/check-os-options.m4 b/m4/check-os-options.m4 index 445bd74..84116a2 100644 --- a/m4/check-os-options.m4 +++ b/m4/check-os-options.m4 | |||
@@ -98,6 +98,7 @@ char buf[1]; getentropy(buf, 1); | |||
98 | HOST_OS=openbsd | 98 | HOST_OS=openbsd |
99 | HOST_ABI=elf | 99 | HOST_ABI=elf |
100 | AC_DEFINE([HAVE_ATTRIBUTE__BOUNDED__], [1], [OpenBSD gcc has bounded]) | 100 | AC_DEFINE([HAVE_ATTRIBUTE__BOUNDED__], [1], [OpenBSD gcc has bounded]) |
101 | AC_DEFINE([HAVE_ATTRIBUTE__DEAD], [1], [OpenBSD gcc has __dead]) | ||
101 | ;; | 102 | ;; |
102 | *mingw*) | 103 | *mingw*) |
103 | HOST_OS=win | 104 | HOST_OS=win |