Android: enable noreturn and returns_nonnull attributes
authorRob Herring <robh@kernel.org>
Tue, 5 Dec 2017 00:35:48 +0000 (18:35 -0600)
committerRob Herring <robh@kernel.org>
Tue, 5 Dec 2017 13:47:04 +0000 (07:47 -0600)
Commit 94ca8e04adf6 ("spirv: Add vtn_fail and vtn_assert helpers") broke
Android builds which have -Werror enabled with the following errors:

external/mesa3d/src/compiler/spirv/spirv_to_nir.c:272:1: error: control may reach end of non-void function [-Werror,-Wreturn-type]
external/mesa3d/src/compiler/spirv/spirv_to_nir.c:810:1: error: control may reach end of non-void function [-Werror,-Wreturn-type]
...

The problem is the noreturn attribute is not enabled and we to define
HAVE_FUNC_ATTRIBUTE_NORETURN.

Auditing src/util/macros.h, we're also missing
HAVE_FUNC_ATTRIBUTE_RETURNS_NONNULL and HAVE_FUNC_ATTRIBUTE_WARN_UNUSED_RESULT,
so add them too.

Fixes: 94ca8e04adf6 ("spirv: Add vtn_fail and vtn_assert helpers")
Cc: Jason Ekstrand <jason.ekstrand@intel.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Emil Velikov <emil.velikov@collabora.com>
Signed-off-by: Rob Herring <robh@kernel.org>
Android.common.mk

index fcd9a874d5381b66c0847f3b38478feaac1794de..103e3fec6152607b68c471c292f3b9fe5b4f4f73 100644 (file)
@@ -57,6 +57,9 @@ LOCAL_CFLAGS += \
        -DHAVE_FUNC_ATTRIBUTE_FORMAT \
        -DHAVE_FUNC_ATTRIBUTE_PACKED \
        -DHAVE_FUNC_ATTRIBUTE_ALIAS \
+       -DHAVE_FUNC_ATTRIBUTE_NORETURN \
+       -DHAVE_FUNC_ATTRIBUTE_RETURNS_NONNULL \
+       -DHAVE_FUNC_ATTRIBUTE_WARN_UNUSED_RESULT \
        -DHAVE___BUILTIN_CTZ \
        -DHAVE___BUILTIN_POPCOUNT \
        -DHAVE___BUILTIN_POPCOUNTLL \