From 7d734def7a18de00749181457423ad09203c0da5 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Mon, 27 Mar 2017 23:21:52 +0100 Subject: Escape char literals --- .../java/org/zwobble/couscous/backends/SourceCodeWriter.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) (limited to 'src/main/java') diff --git a/src/main/java/org/zwobble/couscous/backends/SourceCodeWriter.java b/src/main/java/org/zwobble/couscous/backends/SourceCodeWriter.java index b39fbc0..6d26e8b 100644 --- a/src/main/java/org/zwobble/couscous/backends/SourceCodeWriter.java +++ b/src/main/java/org/zwobble/couscous/backends/SourceCodeWriter.java @@ -40,9 +40,17 @@ public class SourceCodeWriter { public void writeChar(char value) { builder.append("'"); if (value == '\'') { - builder.append("\\"); + builder.append("\\'"); + } else if (value == '\n') { + builder.append("\\n"); + } else if (value == '\r') { + builder.append("\\r"); + } else if (value == '\t') { + builder.append("\\t"); + } else { + builder.append(value); } - builder.append(value).append("'"); + builder.append("'"); } public void writeStringLiteral(String value) { -- cgit v1.2.3