https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84628
--- Comment #9 from Andrew Pinski <pinskia at gcc dot gnu.org> --- deprecated deprecated (msg) The deprecated attribute results in a warning if the function is used anywhere in the source file. This is useful when identifying functions that are expected to be removed in a future version of a program. The warning also includes the location of the declaration of the deprecated function, to enable users to easily find further information about why the function is deprecated, or what they should do instead. Note that the warnings only occurs for uses: int old_fn () __attribute__ ((deprecated)); int old_fn (); int (*fn_ptr)() = old_fn; results in a warning on line 3 but not line 2. The optional msg argument, which must be a string, is printed in the warning if present. The deprecated attribute can also be used for variables and types (see Variable Attributes, see Type Attributes.)