aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2007-07-12 21:20:06 -0400
committerJosh Triplett <josh@freedesktop.org>2007-07-14 12:16:53 -0700
commit984b7b66457cd9fe534c771317f74b66141e76af (patch)
treee11f6d3976925cc2a7a78dd7da3ca0f09aa3623f /symbol.h
parent[PATCH] rewrite type_difference() (diff)
downloadsparse-984b7b66457cd9fe534c771317f74b66141e76af.tar.gz
sparse-984b7b66457cd9fe534c771317f74b66141e76af.tar.bz2
sparse-984b7b66457cd9fe534c771317f74b66141e76af.zip
[PATCH] deal correctly with qualifiers on arrays
* new helper: examine_pointer_target(). Examine target, find address_space et.al. If the target is SYM_NODE - merge it, etc. * new helper: target_qualifiers(). Pointers to any array are considered as pointers to unqualified type as far as implicit conversions are concerned; handle that right. * SYM_TYPEOF can be handled sanely now: don't copy the node, just convert SYM_TYPEOF to SYM_NODE and examine that. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'symbol.h')
-rw-r--r--symbol.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/symbol.h b/symbol.h
index 191f0ef..4362f9a 100644
--- a/symbol.h
+++ b/symbol.h
@@ -264,6 +264,7 @@ extern void add_symbol(struct symbol_list **, struct symbol *);
extern void bind_symbol(struct symbol *, struct ident *, enum namespace);
extern struct symbol *examine_symbol_type(struct symbol *);
+extern struct symbol *examine_pointer_target(struct symbol *);
extern void examine_simple_symbol_type(struct symbol *);
extern const char *show_typename(struct symbol *sym);
extern const char *builtin_typename(struct symbol *sym);