summaryrefslogtreecommitdiffstats
path: root/testsuite
diff options
context:
space:
mode:
authorfche <fche>2005-03-03 21:24:24 +0000
committerfche <fche>2005-03-03 21:24:24 +0000
commit0054a7eaacba2a7183be67b28e7746ed55a8f6d1 (patch)
treeed5c0db8a2cd3bb85fd9bd24232fe01ef6576a68 /testsuite
parent56099f083d7a68722ace316be4d288d21caabaee (diff)
downloadsystemtap-steved-0054a7eaacba2a7183be67b28e7746ed55a8f6d1.tar.gz
systemtap-steved-0054a7eaacba2a7183be67b28e7746ed55a8f6d1.tar.xz
systemtap-steved-0054a7eaacba2a7183be67b28e7746ed55a8f6d1.zip
2005-03-03 Frank Ch. Eigler <fche@redhat.com>
* parse.cxx (parse_assignment): Assert lvalueness of left operand. * staptree.h (expression): Add is_lvalue member. * staptree.cxx (functioncall::resolve_types): Don't crash on formal-vs-actual argument count mismatch. (*): Add some is_lvalue stub functions. * testsuite/*: Some new tests.
Diffstat (limited to 'testsuite')
-rwxr-xr-xtestsuite/parseko/three.stp5
-rwxr-xr-xtestsuite/semko/eight.stp5
-rwxr-xr-xtestsuite/semko/five.stp10
-rwxr-xr-xtestsuite/semko/seven.stp6
-rwxr-xr-xtestsuite/semko/six.stp6
-rwxr-xr-xtestsuite/semok/five.stp7
6 files changed, 39 insertions, 0 deletions
diff --git a/testsuite/parseko/three.stp b/testsuite/parseko/three.stp
new file mode 100755
index 00000000..4db7dd3f
--- /dev/null
+++ b/testsuite/parseko/three.stp
@@ -0,0 +1,5 @@
+#! semtest
+
+probe foo {
+ 1 + 2 = 3; # bad lvalue
+}
diff --git a/testsuite/semko/eight.stp b/testsuite/semko/eight.stp
new file mode 100755
index 00000000..1bcb344a
--- /dev/null
+++ b/testsuite/semko/eight.stp
@@ -0,0 +1,5 @@
+#! semtest
+
+probe foo {
+ stats << "string" # stats only collect numbers
+}
diff --git a/testsuite/semko/five.stp b/testsuite/semko/five.stp
new file mode 100755
index 00000000..6887fced
--- /dev/null
+++ b/testsuite/semko/five.stp
@@ -0,0 +1,10 @@
+#! semtest
+
+function bar ()
+{
+ return 0
+}
+
+probe foo {
+ bar (1, 2) # arg count mismatch
+}
diff --git a/testsuite/semko/seven.stp b/testsuite/semko/seven.stp
new file mode 100755
index 00000000..7d987f77
--- /dev/null
+++ b/testsuite/semko/seven.stp
@@ -0,0 +1,6 @@
+#! semtest
+
+probe foo {
+ baz[1] = 4;
+ baz["1"] = 5; # inconsistent index types
+}
diff --git a/testsuite/semko/six.stp b/testsuite/semko/six.stp
new file mode 100755
index 00000000..aa7d10d7
--- /dev/null
+++ b/testsuite/semko/six.stp
@@ -0,0 +1,6 @@
+#! semtest
+
+probe foo {
+ bar[1] = 2;
+ bar[1, 2] = 3; # inconsistent array dimensions
+}
diff --git a/testsuite/semok/five.stp b/testsuite/semok/five.stp
new file mode 100755
index 00000000..c8b59e73
--- /dev/null
+++ b/testsuite/semok/five.stp
@@ -0,0 +1,7 @@
+#! parsetest
+
+probe foo
+{
+ array[1] = array[2] = 3;
+ statvar << value << 4;
+}