aboutsummaryrefslogtreecommitdiff
path: root/scan.c
diff options
context:
space:
mode:
Diffstat (limited to 'scan.c')
-rw-r--r--scan.c15
1 files changed, 4 insertions, 11 deletions
diff --git a/scan.c b/scan.c
index cd85d9d..bd0435c 100644
--- a/scan.c
+++ b/scan.c
@@ -388,18 +388,11 @@ again:
case 'u':
s->usebuf = true;
nextchar(s);
- switch (s->chr) {
- case '\'':
- return charconst(s);
- case '8':
- if (s->buf.str[0] != 'u')
- break;
+ if (s->buf.str[0] == 'u' && s->chr == '8')
nextchar(s);
- if (s->chr != '"')
- break;
- /* fallthrough */
- case '"':
- return stringlit(s);
+ switch (s->chr) {
+ case '\'': return charconst(s);
+ case '"': return stringlit(s);
}
return ident(s);
case EOF: