1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
From 4fe5a375fa6cb07f1c5cb6507b3c4e3b38e6fcef Mon Sep 17 00:00:00 2001
From: Akim Demaille <akim.demaille@gmail.com>
Date: Sat, 9 Oct 2021 10:29:50 +0200
Subject: [PATCH] tests: make it easier to spot failures
* examples/c/glr/c++-types.test: Split in several small test cases.
---
examples/c/glr/c++-types.test | 37 ++++++++++++++++++++++++-----------
1 file 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)"
--
2.27.0
|