* [PATCH] delay removing file scope
@ 2006-11-30 10:16 Christopher Li
2006-12-05 2:04 ` Josh Triplett
0 siblings, 1 reply; 2+ messages in thread
From: Christopher Li @ 2006-11-30 10:16 UTC (permalink / raw)
To: Josh Triplett; +Cc: linux-sparse
Sparse only returns the used symbol. By the time it return
the symbol, it already destroyed the file scope.
This patch preserve the file scope. The caller can
examine the unused symbols. e.g. If I want to generate
ctags base on sparse, it need those unused symbols.
Signed-off-by: Christopher Li <sparse@chrisli.org>
Index: sparse/lib.c
===================================================================
--- sparse.orig/lib.c 2006-11-30 01:55:06.000000000 -0800
+++ sparse/lib.c 2006-11-30 01:55:23.000000000 -0800
@@ -661,9 +661,8 @@
/* Clear previous symbol list */
translation_unit_used_list = NULL;
- start_file_scope();
+ new_file_scope();
res = sparse_file(filename);
- end_file_scope();
/* Drop the tokens for this file after parsing */
clear_token_alloc();
Index: sparse/scope.c
===================================================================
--- sparse.orig/scope.c 2006-11-30 01:54:23.000000000 -0800
+++ sparse/scope.c 2006-11-30 01:55:23.000000000 -0800
@@ -96,6 +96,13 @@
end_scope(&file_scope);
}
+void new_file_scope(void)
+{
+ if (file_scope != &builtin_scope)
+ end_file_scope();
+ start_file_scope();
+}
+
void end_symbol_scope(void)
{
end_scope(&block_scope);
Index: sparse/scope.h
===================================================================
--- sparse.orig/scope.h 2006-11-30 01:54:23.000000000 -0800
+++ sparse/scope.h 2006-11-30 01:55:23.000000000 -0800
@@ -28,6 +28,7 @@
extern void start_file_scope(void);
extern void end_file_scope(void);
+extern void new_file_scope(void);
extern void start_symbol_scope(void);
extern void end_symbol_scope(void);
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2006-12-05 2:04 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-11-30 10:16 [PATCH] delay removing file scope Christopher Li
2006-12-05 2:04 ` Josh Triplett
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.