The __experimental macro tags a given exported function as being part of the EXPERIMENTAL api. Use of this tag will cause any caller of the function (that isn't removed by dead code elimination) to emit a warning that the user is making use of an API whos stabilty isn't guaranteed. It also places the function in the .text.experimental section, which is used to validate the tag against the corresponding library version map
Signed-off-by: Neil Horman <nhor...@tuxdriver.com> CC: Thomas Monjalon <tho...@monjalon.net> CC: "Mcnamara, John" <john.mcnam...@intel.com> --- lib/librte_compat/rte_compat.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/librte_compat/rte_compat.h b/lib/librte_compat/rte_compat.h index 41e8032ba..c7c967d86 100644 --- a/lib/librte_compat/rte_compat.h +++ b/lib/librte_compat/rte_compat.h @@ -101,5 +101,7 @@ */ #endif +#define __experimental \ +__attribute__(( deprecated("Symbol is not yet part of stable abi"), section(".text.experimental") )) #endif /* _RTE_COMPAT_H_ */ -- 2.14.3