From b007c744a482d7c19545bdcbf1e4372fb36878a8 Mon Sep 17 00:00:00 2001 From: "David M. Lee" <dlee@digium.com> Date: Wed, 8 May 2013 21:01:33 +0000 Subject: [PATCH] Add development flag to disable the inline API. A GCC bug[1] can, in some cases, pop up an unsuppressible pedwarn when using a static inline standard library function from a non-static inline function. This normally doesn't show up, but can occur if you're running an upgrade version of GCC (such as GCC 4.8 on OS X, which normally runs GCC 4.2). [1]: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47816 git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@388046 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- build_tools/cflags.xml | 6 ++++++ include/asterisk/inline_api.h | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/build_tools/cflags.xml b/build_tools/cflags.xml index 7e3e9eeb76..c4d15a67ba 100644 --- a/build_tools/cflags.xml +++ b/build_tools/cflags.xml @@ -24,6 +24,12 @@ <member name="LOW_MEMORY" displayname="Optimize for Low Memory Usage"> <support_level>extended</support_level> </member> + <member name="DISABLE_INLINE" displayname="Disable the inline API"> + <!-- Added to work around GCC bug + See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47816 + --> + <support_level>extended</support_level> + </member> <member name="BETTER_BACKTRACES" displayname="Use libbfd (GPL) to generate better inline backtraces"> <depend>BFD</depend> <depend>DLADDR</depend> diff --git a/include/asterisk/inline_api.h b/include/asterisk/inline_api.h index 2347d09d7f..5f6911d369 100644 --- a/include/asterisk/inline_api.h +++ b/include/asterisk/inline_api.h @@ -43,7 +43,7 @@ including the header file */ -#if !defined(LOW_MEMORY) +#if !defined(LOW_MEMORY) && !defined(DISABLE_INLINE) #if !defined(AST_API_MODULE) #define AST_INLINE_API(hdr, body) hdr; extern inline hdr body -- GitLab