Akim Demaille
325ec7d324
cex: always show ε/%empty in counterexamples
...
On a case such as
%%
exp
: empty "a"
| "a" empty
empty
: %empty
we used to display
warning: shift/reduce conflict on token "a" [-Wcounterexamples]
Example: • "a"
Shift derivation
exp
↳ 2: • "a" empty
↳ 2: ε
Example: • "a"
Reduce derivation
exp
↳ 1: empty "a"
↳ 3: •
where the shift derivation shows an item "2: empty → ε", with an
explicit "ε", but the reduce derivation shows "3: empty → •", without
"ε".
For consistency, let's always show ε/%empty in rules with an empty
rhs:
Reduce derivation
exp
↳ 1: empty "a"
↳ 3: ε •
* src/derivation.c (derivation_width, derivation_print_tree_impl):
Always show ε/%empty in counterexamples.
* tests/diagnostics.at: Check that case.
* tests/conflicts.at, tests/counterexample.at: Adjust.
2020-09-02 07:31:55 +02:00
..
2010-10-17 10:23:55 -04:00
2020-07-14 06:48:48 +02:00
2020-06-01 18:52:22 +02:00
2020-01-10 19:16:23 +01:00
2020-01-10 19:16:23 +01:00
2020-06-27 11:39:32 +02:00
2020-05-25 07:14:34 +02:00
2020-07-19 19:26:47 +02:00
2020-06-22 19:33:30 +02:00
2020-07-21 18:57:56 +02:00
2020-06-16 07:30:26 +02:00
2020-08-30 19:20:49 +02:00
2020-07-14 06:48:48 +02:00
2020-09-02 07:31:55 +02:00
2020-08-30 19:20:49 +02:00
2020-06-27 11:39:32 +02:00
2020-01-10 19:16:23 +01:00
2020-06-07 09:18:58 +02:00
2020-06-07 09:18:58 +02:00
2020-06-01 18:52:22 +02:00
2020-01-10 19:16:23 +01:00
2020-08-02 08:36:49 +02:00
2020-07-14 06:48:48 +02:00
2020-07-14 06:48:48 +02:00
2020-07-19 17:09:01 +02:00
2020-07-19 17:09:01 +02:00
2020-07-16 07:31:25 +02:00
2020-07-16 07:31:25 +02:00
2020-07-14 06:48:48 +02:00
2020-06-13 16:58:13 +02:00
2020-04-29 08:47:04 +02:00
2020-08-02 08:32:57 +02:00
2020-01-10 19:16:23 +01:00
2020-01-10 19:16:23 +01:00
2020-01-10 19:16:23 +01:00
2020-07-14 06:48:48 +02:00
2020-01-10 19:16:23 +01:00
2020-07-16 07:31:24 +02:00
2020-08-07 07:30:06 +02:00
2020-03-08 10:13:16 +01:00
2020-06-27 11:39:32 +02:00
2020-03-06 08:30:21 +01:00
2020-07-29 20:00:27 +02:00
2020-07-14 06:48:48 +02:00
2020-07-16 07:31:24 +02:00
2020-06-28 09:49:00 +02:00
2020-01-10 19:16:23 +01:00
2020-01-10 19:16:23 +01:00
2020-01-10 19:16:23 +01:00
2020-06-27 11:39:32 +02:00
2020-01-10 19:16:23 +01:00
2020-08-07 07:30:06 +02:00
2020-01-10 19:16:23 +01:00
2020-08-07 07:30:06 +02:00
2020-08-02 08:32:57 +02:00
2020-08-07 07:30:06 +02:00
2020-08-30 19:20:49 +02:00
2020-07-14 06:48:48 +02:00
2020-07-14 06:48:48 +02:00
2020-01-10 19:16:23 +01:00
2020-07-14 14:26:02 +02:00
2020-06-01 18:52:22 +02:00
2020-07-14 14:26:02 +02:00
2020-01-10 19:16:23 +01:00
2020-08-30 10:45:21 +02:00
2020-03-06 08:30:21 +01:00
2020-08-02 08:32:57 +02:00
2020-06-27 11:39:32 +02:00
2020-01-10 19:16:23 +01:00
2020-01-10 19:16:23 +01:00
2020-01-10 19:16:23 +01:00
2020-06-27 08:16:07 +02:00
2008-11-15 10:47:15 +01:00
2020-07-05 09:59:45 +02:00
2020-06-13 15:20:56 +02:00
2008-11-15 10:47:15 +01:00
2020-01-10 19:16:23 +01:00
2020-08-08 07:53:33 +02:00
2008-11-15 10:47:15 +01:00
2020-01-10 19:16:23 +01:00
2020-06-13 15:20:56 +02:00
2020-08-30 19:20:49 +02:00
2020-08-30 19:20:49 +02:00
2020-07-14 06:48:48 +02:00
2020-07-14 06:48:48 +02:00
2020-08-01 08:54:46 +02:00
2020-08-01 08:54:46 +02:00
2020-08-07 07:30:06 +02:00
2020-08-07 07:30:06 +02:00
2020-08-02 08:19:35 +02:00
2020-07-14 06:48:48 +02:00
2020-01-10 19:16:23 +01:00
2020-05-22 08:45:43 +02:00
2020-01-10 19:16:23 +01:00
2019-01-12 10:45:21 +01:00