From 2004c7a6dc76cb10bc0ef8c2ca679b9f1ef1b909 Mon Sep 17 00:00:00 2001 From: Adam Chlipala Date: Thu, 22 Sep 2011 09:51:06 -0400 Subject: Resugar tag names before printing parse errors --- src/urweb.grm | 9 +++++++-- tests/badTags.ur | 1 + 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 tests/badTags.ur diff --git a/src/urweb.grm b/src/urweb.grm index 7a4d143f..db99d3b5 100644 --- a/src/urweb.grm +++ b/src/urweb.grm @@ -1397,6 +1397,11 @@ xmlOne : NOTAGS (EApp ((EVar (["Basis"], "cdata", Infer) end) | tag GT xmlOpt END_TAG (let + fun tagOut s = + case s of + "tabl" => "table" + | _ => s + val pos = s (tagleft, GTright) val et = tagIn END_TAG in @@ -1423,9 +1428,9 @@ xmlOne : NOTAGS (EApp ((EVar (["Basis"], "cdata", Infer) () else ErrorMsg.errorAt pos ("Begin tag <" - ^ #1 (#1 tag) + ^ tagOut (#1 (#1 tag)) ^ "> and end tag don't match."); (EWild, pos)) end) diff --git a/tests/badTags.ur b/tests/badTags.ur new file mode 100644 index 00000000..0cc6c06c --- /dev/null +++ b/tests/badTags.ur @@ -0,0 +1 @@ +fun main () : transaction page = -- cgit v1.2.3