This is the mail archive of the
systemtap-cvs@sourceware.org
mailing list for the systemtap project.
src ./ChangeLog ./parse.cxx ./parse.h ./stap.1 ...
- From: dsmith at sourceware dot org
- To: systemtap-cvs at sources dot redhat dot com
- Date: 16 May 2006 18:51:35 -0000
- Subject: src ./ChangeLog ./parse.cxx ./parse.h ./stap.1 ...
CVSROOT: /cvs/systemtap
Module name: src
Changes by: dsmith@sourceware.org 2006-05-16 18:51:35
Modified files:
. : ChangeLog parse.cxx parse.h stap.1.in
stapex.5.in stapfuncs.5.in
testsuite/buildok: context_test.stp fifteen.stp fourteen.stp
nineteen.stp process_test.stp seven.stp
seventeen.stp sixteen.stp task_test.stp
thirteen.stp timestamp.stp twentyone.stp
twentythree.stp twentytwo.stp
testsuite/parseok: three.stp two.stp
testsuite/semko: nineteen.stp
testsuite/semok: args.stp eleven.stp seven.stp
testsuite/transko: two.stp
Log message:
2006-05-16 David Smith <dsmith@redhat.com>
* parse.cxx (parser::parser): Added initializer for 'context'
member variable.
(tt2str): Added support for new tok_keyword type.
(operator <<): Ignores keyword content when outputting error
message.
(lexer::scan): Recognizes keywords, such as 'probe', 'global',
'function', etc. and classifies them as type 'tok_keyword'. This
causes keywords to become reserved so they cannot be used for
function names, variable names, etc.
(parser::parse): Changed tok_identifier to tok_keyword when looking
for "probe", "global", or "function". Also sets context member
variable which remembers if we're in probe, global, function, or
embedded context.
(parser::parse_probe, parser::parse_statement)
(parser::parse_global, parser::parse_functiondecl)
(parser::parse_if_statement, parser::parse_delete_statement)
(parser::parse_break_statement, parser::parse_continue_statement)
(parser::parse_for_loop, parser::parse_while_loop)
(parser::parse_foreach_loop, parser::parse_array_in): Looks for
tok_keyword instead of tok_identifier.
(parser::parse_probe_point): Allows keywords as part of a probe
name, since "return" and "function" are keywords.
(parser::parse_return_statement): Looks for tok_keyword instead of
tok_identifier. Make sure we're in function context.
(parser::parse_next_statement): Looks for tok_keyword instead of
tok_identifier. Make sure we're in probe context.
* parse.h: Added parse_context enum. Added 'tok_keyword' to
token_type enum. Added parse_context 'context' member variable to
parser class.
* stap.1.in: Because the string() function has been removed,
the 'string()' function reference has been changed to a 'sprint()'
function reference.
* stapex.5.in: Ditto.
* stapfuncs.5.in: The description of the string() and hexstring()
functions has been removed.
* testsuite/buildok/context_test.stp: Calls to the string()
function were converted to sprint() function calls.
* testsuite/buildok/fifteen.stp: Ditto.
* testsuite/buildok/nineteen.stp: Ditto.
* testsuite/buildok/process_test.stp: Ditto.
* testsuite/buildok/task_test.stp: Ditto.
* testsuite/buildok/timestamp.stp: Ditto.
* testsuite/buildok/twentyone.stp: Ditto.
* testsuite/semok/args.stp: Ditto.
* testsuite/semok/seven.stp: Ditto.
* testsuite/buildok/fourteen.stp: Calls to log()/string() were
converted to a call to printf().
* testsuite/buildok/sixteen.stp: Ditto.
* testsuite/buildok/thirteen.stp: Ditto.
* testsuite/buildok/twentythree.stp: Ditto.
* testsuite/buildok/twentytwo.stp: Ditto.
* testsuite/buildok/seven.stp: Calls to the string()
function were converted to sprint() calls. Calls to the
hexstring() function were converted to sprintf() calls.
* testsuite/semok/eleven.stp: Ditto.
* testsuite/buildok/seventeen.stp: Calls to log()/hexstring() were
converted to a call to printf().
* testsuite/semko/nineteen.stp: Ditto.
* testsuite/parseok/three.stp: Because keywords are reserved, a
variable named 'string' was renamed to 'str'.
* testsuite/parseok/two.stp: Because keywords are reserved, a
variable named 'global' was renamed to 'gbl'.
* testsuite/transko/two.stp: Because the parser now checks for
'next' and 'return' statement context, a 'next' statement was
removed from a function and a 'return' statement was removed from
a probe.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/src/ChangeLog.diff?cvsroot=systemtap&r1=1.385&r2=1.386
http://sourceware.org/cgi-bin/cvsweb.cgi/src/parse.cxx.diff?cvsroot=systemtap&r1=1.45&r2=1.46
http://sourceware.org/cgi-bin/cvsweb.cgi/src/parse.h.diff?cvsroot=systemtap&r1=1.20&r2=1.21
http://sourceware.org/cgi-bin/cvsweb.cgi/src/stap.1.in.diff?cvsroot=systemtap&r1=1.34&r2=1.35
http://sourceware.org/cgi-bin/cvsweb.cgi/src/stapex.5.in.diff?cvsroot=systemtap&r1=1.3&r2=1.4
http://sourceware.org/cgi-bin/cvsweb.cgi/src/stapfuncs.5.in.diff?cvsroot=systemtap&r1=1.26&r2=1.27
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/context_test.stp.diff?cvsroot=systemtap&r1=1.3&r2=1.4
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/fifteen.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/fourteen.stp.diff?cvsroot=systemtap&r1=1.3&r2=1.4
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/nineteen.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/process_test.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/seven.stp.diff?cvsroot=systemtap&r1=1.3&r2=1.4
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/seventeen.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/sixteen.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/task_test.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/thirteen.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/timestamp.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/twentyone.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/twentythree.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/buildok/twentytwo.stp.diff?cvsroot=systemtap&r1=1.2&r2=1.3
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/parseok/three.stp.diff?cvsroot=systemtap&r1=1.4&r2=1.5
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/parseok/two.stp.diff?cvsroot=systemtap&r1=1.5&r2=1.6
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/semko/nineteen.stp.diff?cvsroot=systemtap&r1=1.2&r2=1.3
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/semok/args.stp.diff?cvsroot=systemtap&r1=1.1&r2=1.2
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/semok/eleven.stp.diff?cvsroot=systemtap&r1=1.3&r2=1.4
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/semok/seven.stp.diff?cvsroot=systemtap&r1=1.5&r2=1.6
http://sourceware.org/cgi-bin/cvsweb.cgi/src/testsuite/transko/two.stp.diff?cvsroot=systemtap&r1=1.3&r2=1.4