summaryrefslogtreecommitdiff
path: root/mesonbuild/compilers/c_function_attributes.py
Commit message (Collapse)AuthorAgeFilesLines
* compiler: add 'force_align_arg_pointer' function attributeTim-Philipp Müller2020-06-211-0/+2
|
* compilers: Silence warning about gnu_inline with clangNirbheek Chauhan2020-04-201-3/+0
| | | | | | | | | | The warning is due to a change in behaviour in Clang 10 and newer: https://releases.llvm.org/10.0.0/tools/clang/docs/ReleaseNotes.html#c-language-changes-in-clang This was already fixed for clang++, but not for clang for some reason. It was also fixed incorrectly; by adding `extern` instead of moving from `-Werror` to `-Werror=attributes`.
* compilers: Update gnu_inline test to work correctly with Clang >= 10Dylan Baker2020-04-171-0/+3
| | | | Which has changed the way it handles gnu_inline in C++.
* Split attribute visibilityDylan Baker2019-06-251-2/+9
| | | | | | | | | | | | | | | * c_function_attributes: remove 'protected' from 'visibility' This doesn't exist on macos with the apple compiler, which always causes failures. Fixes #5530 * compilers: Add split visibility checks to has_function_attribute These check for a single visibility at a time, rather than all four at once. This allows for finer grained searches, and should make using these checks safer across operating systems.
* compilers/c_function_attributes: fix for ICCDylan Baker2018-11-151-4/+4
| | | | | ICC doesn't like the extra set of parens, GCC 8.2.1 and Clang 6.0.1 don't have a problem with this.
* Add method to check for C/C++ function attributesDylan Baker2018-09-071-0/+123
It's fairly common on Linux and *BSD platforms to check for these attributes existence, so it makes sense to me to have this checking build into meson itself. Autotools also has a builtin for handling these, and by building them in we can short circuit cases that we know that these don't exist (MSVC). Additionally this adds support for two common MSVC __declspec attributes, dllimport and dllexport. This implements the declspec version (even though GCC has an __attribute__ version that both it and clang support), since GCC and Clang support the MSVC version as well. Thus it seems reasonable to assume that most projects will use the __declspec version over teh __attribute__ version.