diff options
author | Chuck Ebbert <76306.1226@compuserve.com> | 2006-01-09 18:59:17 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@hera.kernel.org> | 2006-01-09 18:59:17 -0500 |
commit | 711a660dc2064013a2b0167ee67389707fc9cac3 (patch) | |
tree | 1430cbabc0e634c5efceabbe72da426fde8cc5d0 /include/linux | |
parent | ffbf670f5cd50501a34a5187981460da2216071e (diff) |
[PATCH] mutex subsystem, add typecheck_fn(type, function)
add typecheck_fn(type, function) to do type-checking of function
pointers.
Modified-by: Ingo Molnar <mingo@elte.hu>
(made it typeof() based, instead of typedef based.)
Signed-off-by: Chuck Ebbert <76306.1226@compuserve.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/kernel.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/include/linux/kernel.h b/include/linux/kernel.h index ca7ff8fdd090..d0e6ca3b00ef 100644 --- a/include/linux/kernel.h +++ b/include/linux/kernel.h | |||
@@ -286,6 +286,15 @@ extern void dump_stack(void); | |||
286 | 1; \ | 286 | 1; \ |
287 | }) | 287 | }) |
288 | 288 | ||
289 | /* | ||
290 | * Check at compile time that 'function' is a certain type, or is a pointer | ||
291 | * to that type (needs to use typedef for the function type.) | ||
292 | */ | ||
293 | #define typecheck_fn(type,function) \ | ||
294 | ({ typeof(type) __tmp = function; \ | ||
295 | (void)__tmp; \ | ||
296 | }) | ||
297 | |||
289 | #endif /* __KERNEL__ */ | 298 | #endif /* __KERNEL__ */ |
290 | 299 | ||
291 | #define SI_LOAD_SHIFT 16 | 300 | #define SI_LOAD_SHIFT 16 |