diff options
-rw-r--r-- | examples/c/glr/c++-types.test | 37 |
1 files changed, 26 insertions, 11 deletions
diff --git a/examples/c/glr/c++-types.test b/examples/c/glr/c++-types.test index 074d72cc..e63dd31e 100644 --- a/examples/c/glr/c++-types.test +++ b/examples/c/glr/c++-types.test @@ -17,31 +17,46 @@ cat >input <<EOF z + q; +EOF +run 0 "1.0-5: +(z, q)" +cat >input <<EOF T x; +EOF +run 0 "1.0-3: <declare>(T, x)" +cat >input <<EOF T x = y; +EOF +run 0 "1.0-7: <init-declare>(T, x, y)" +cat >input <<EOF x = y; +EOF +run 0 "1.0-5: =(x, y)" +cat >input <<EOF T (x) + y; +EOF +run 0 "1.0-9: +(<cast>(x, T), y)" +cat >input <<EOF T (x); +EOF +run 0 "1.0-5: <OR>(<declare>(T, x), <cast>(x, T))" +cat >input <<EOF T (y) = z + q; +EOF +run 0 "1.0-13: <OR>(<init-declare>(T, y, +(z, q)), =(<cast>(y, T), +(z, q)))" +cat >input <<EOF T (y y) = z + q; +EOF +run 0 "1.0-15: <error> +err: 1.5: syntax error, unexpected identifier, expecting '=' or '+' or ')'" +cat >input <<EOF z + q; EOF -run 0 "\ -1.0-5: +(z, q) -3.0-3: <declare>(T, x) -5.0-7: <init-declare>(T, x, y) -7.0-5: =(x, y) -9.0-9: +(<cast>(x, T), y) -11.0-5: <OR>(<declare>(T, x), <cast>(x, T)) -13.0-13: <OR>(<init-declare>(T, y, +(z, q)), =(<cast>(y, T), +(z, q))) -15.0-15: <error> -17.0-5: +(z, q) -err: 15.5: syntax error, unexpected identifier, expecting '=' or '+' or ')'" +run 0 "1.0-5: +(z, q)" |