diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2009-06-12 21:46:56 -0600 |
---|---|---|
committer | Rusty Russell <rusty@rustcorp.com.au> | 2009-06-12 21:46:57 +0930 |
commit | d2c123c27db841c6c11a63de9c144823d2b1ba76 (patch) | |
tree | ee9de1ca10681c1f632020783e8a31ec61f35c4e /include/linux/compiler.h | |
parent | 45fcc70c0b6ee0c508e1fdb5fef735c3546803f4 (diff) | |
download | linux-d2c123c27db841c6c11a63de9c144823d2b1ba76.tar.gz linux-d2c123c27db841c6c11a63de9c144823d2b1ba76.tar.bz2 linux-d2c123c27db841c6c11a63de9c144823d2b1ba76.zip |
module_param: add __same_type convenience wrapper for __builtin_types_compatible_p
Impact: new API
__builtin_types_compatible_p() is a little awkward to use: it takes two
types rather than types or variables, and it's just damn long.
(typeof(type) == type, so this works on types as well as vars).
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'include/linux/compiler.h')
-rw-r--r-- | include/linux/compiler.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/compiler.h b/include/linux/compiler.h index 37bcb50a4d7c..04fb5135b4e1 100644 --- a/include/linux/compiler.h +++ b/include/linux/compiler.h @@ -261,6 +261,11 @@ void ftrace_likely_update(struct ftrace_branch_data *f, int val, int expect); # define __section(S) __attribute__ ((__section__(#S))) #endif +/* Are two types/vars the same type (ignoring qualifiers)? */ +#ifndef __same_type +# define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b)) +#endif + /* * Prevent the compiler from merging or refetching accesses. The compiler * is also forbidden from reordering successive instances of ACCESS_ONCE(), |