aboutsummaryrefslogtreecommitdiff
path: root/src/common/tuklib_common.h (follow)
AgeCommit message (Collapse)AuthorFilesLines
2023-09-22tuklib: Update tuklib_attr_noreturn for C11/C17 and C23.Lasse Collin1-1/+21
This makes no difference for GCC or Clang as they support GNU C's __attribute__((__noreturn__)) but this helps with MSVC: - VS 2019 version 16.7 and later support _Noreturn if the options /std:c11 or /std:c17 are used. This gets handled with the check for __STDC_VERSION__ >= 201112. - When MSVC isn't in C11/C17 mode, __declspec(noreturn) is used. C23 will deprecate _Noreturn (and <stdnoreturn.h>) for [[noreturn]]. This commit anticipates that but the final __STDC_VERSION__ value isn't known yet.
2023-01-24Revert "tuklib_common: Define __has_warning if it is not defined."Lasse Collin1-7/+0
This reverts commit 82e3c968bfa10e3ff13333bd9cbbadb5988d6766. Macros in the reserved namespace (_foo or __foo) shouldn't be #defined without a very good reason. Here the alternative would have been to #define tuklib_has_warning(str) to an approriate value. Also the tuklib_* files should stay namespace clean if possible.
2023-01-19tuklib_common: Define __has_warning if it is not defined.Jia Tan1-0/+7
clang supports the __has_warning macro to determine if the version of clang compiling the code supports a given warning. If we do not define it for other compilers, it may cause a preprocessor error.
2019-07-12Update tuklib base headers to include stdbool.h.Lasse Collin1-1/+1
2009-09-22Avoid non-standard preprocessor construct.Lasse Collin1-4/+7
Thanks to Jouk Jansen.
2009-09-21Make sure that TUKLIB_DOSLIKE doesn't get defined on Cygwin.Lasse Collin1-1/+2
Thanks to Charles Wilson.
2009-09-19Various changes.Lasse Collin1-0/+67
Separate a few reusable components from XZ Utils specific code. The reusable code is now in "tuklib" modules. A few more could be separated still, e.g. bswap.h. Fix some bugs in lzmainfo. Fix physmem and cpucores code on OS/2. Thanks to Elbert Pol for help. Add OpenVMS support into physmem. Add a few #ifdefs to ease building XZ Utils on OpenVMS. Thanks to Jouk Jansen for the original patch.