]> git.neil.brown.name Git - history.git/commitdiff
[PATCH] deprecated function attribute
authorRobert Love <rml@tech9.net>
Sat, 28 Dec 2002 12:09:48 +0000 (04:09 -0800)
committerLinus Torvalds <torvalds@home.transmeta.com>
Sat, 28 Dec 2002 12:09:48 +0000 (04:09 -0800)
This patch adds support for usage of the attribute as "deprecated" and
is backward-compatible.  Usage is:

int deprecated foo(void)

etc..

If we mark a function as deprecated, then each use of the function emits
a warning like:

foo.c:12: warning: `baz' is deprecated (declared at bar.c:60)

Which is very informative, giving both the location of each usage and
where the little bastard is declared.

include/linux/compiler.h

index 6b19413b47a6e16e966f641640bbf45dc9e36c07..51cfdb71594be0dde85d6eda168381283f781cf6 100644 (file)
 #define likely(x)      __builtin_expect((x),1)
 #define unlikely(x)    __builtin_expect((x),0)
 
+/*
+ * Allow us to mark functions as 'deprecated' and have gcc emit a nice
+ * warning for each use, in hopes of speeding the functions removal.
+ * Usage is:
+ *             int deprecated foo(void)
+ * and then gcc will emit a warning for each usage of the function.
+ */
+#if __GNUC__ >= 3
+#define deprecated     __attribute__((deprecated))
+#else
+#define deprecated
+#endif
+
 /* This macro obfuscates arithmetic on a variable address so that gcc
    shouldn't recognize the original var, and make assumptions about it */
 #define RELOC_HIDE(ptr, off)                                   \