summaryrefslogtreecommitdiffstats
path: root/libidu/scanners.c
diff options
context:
space:
mode:
Diffstat (limited to 'libidu/scanners.c')
-rw-r--r--libidu/scanners.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/libidu/scanners.c b/libidu/scanners.c
index c9785c1..112fd43 100644
--- a/libidu/scanners.c
+++ b/libidu/scanners.c
@@ -1643,7 +1643,19 @@ get_token_lisp (FILE *in_FILE, void const *args, int *flags)
}
} while ( (c != EOF) && (c != '"'));
goto top;
-
+
+ case '?': /* character constant */
+ cconstant:
+ do {
+ c = getc(in_FILE);
+ if (c == '\\')
+ {
+ c = getc(in_FILE);
+ goto cconstant;
+ }
+ } while (c != EOF && is_IDENT(c));
+ goto top;
+
case '.':
case '+': case '-':
id = scanner_buffer;