From: Justus Winter <4winter@informatik.uni-hamburg.de> Date: Mon, 24 Sep 2012 15:21:15 +0000 (+0200) Subject: Provide a __has_attribute compatibility macro X-Git-Tag: 0.15_rc1~238 X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=commitdiff_plain;h=da12807734cc90d8bf78ce5814636aaf5a18827b Provide a __has_attribute compatibility macro __has_attribute is defined by clang and tests whether a given function attribute is supported by clang. Add a compatibility macro for other compilers. Signed-off-by: Justus Winter <4winter@informatik.uni-hamburg.de> --- diff --git a/compat/function-attributes.h b/compat/function-attributes.h new file mode 100644 index 00000000..18f90903 --- /dev/null +++ b/compat/function-attributes.h @@ -0,0 +1,31 @@ +/* function-attributes.h - Provides compiler abstractions for + * function attributes + * + * Copyright (c) 2012 Justus Winter <4winter@informatik.uni-hamburg.de> + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see http://www.gnu.org/licenses/ . + */ + +#ifndef FUNCTION_ATTRIBUTES_H +#define FUNCTION_ATTRIBUTES_H + +/* clang provides this macro to test for support for function + * attributes. If it isn't defined, this provides a compatibility + * macro for other compilers. + */ +#ifndef __has_attribute +#define __has_attribute(x) 0 +#endif + +#endif