summaryrefslogtreecommitdiffstats
path: root/staptree.h
diff options
context:
space:
mode:
authorfche <fche>2005-03-04 20:10:09 +0000
committerfche <fche>2005-03-04 20:10:09 +0000
commit0fefb486c5965e371cb52f55548123233da85f72 (patch)
treed8f847e4fa6972bdd9ff22b180a5f057d52d579e /staptree.h
parent8af3da4621b58b8bf39f42f65cac2d6111928fd7 (diff)
downloadsystemtap-steved-0fefb486c5965e371cb52f55548123233da85f72.tar.gz
systemtap-steved-0fefb486c5965e371cb52f55548123233da85f72.tar.xz
systemtap-steved-0fefb486c5965e371cb52f55548123233da85f72.zip
2005-03-04 Frank Ch. Eigler <fche@redhat.com>
* parse.cxx (scan): Support '$' characters in identifiers. (parse_symbol): Support thread-> / process-> shorthand. * staptree.cxx (symresolution_info::find): Split up into find_scalar, find_array, find_function. (resolve_symbols): Call the above for symbol/arrayindex/functioncall. (find_scalar): Add stub support for synthetic builtin variables. * staptree.h: Corresponding changes. * testsuite/*: Some new tests.
Diffstat (limited to 'staptree.h')
-rw-r--r--staptree.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/staptree.h b/staptree.h
index a95d9f05..b38221bc 100644
--- a/staptree.h
+++ b/staptree.h
@@ -209,7 +209,9 @@ struct symresolution_info
vector<stapfile*>& f,
stapfile* cfil);
- vardecl* find (const string& name);
+ vardecl* find_scalar (const string& name);
+ vardecl* find_array (const string& name, const vector<expression*>&);
+ functiondecl* find_function (const string& name, const vector<expression*>&);
void unresolved (const token* tok);
unsigned num_unresolved;
@@ -257,6 +259,11 @@ struct vardecl: public symboldecl
};
+struct vardecl_builtin: public vardecl
+{
+};
+
+
struct block;
struct functiondecl: public symboldecl
{