Minor scanning changes

git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@1016 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
Dave Beazley 2001-02-04 03:54:38 +00:00
commit bc2c9de5e0
4 changed files with 26 additions and 2 deletions

View file

@ -295,6 +295,11 @@ look(SwigScanner *s) {
s->string_start = s->line;
state = 9; /* A character constant */
}
else if (c == '`') {
s->string_start = s->line;
state = 900;
}
else if (c == '.') state = 100; /* Maybe a number, maybe just a period */
else if (isdigit(c)) state = 8; /* A numerical value */
else state = 99; /* An error */
@ -640,6 +645,18 @@ look(SwigScanner *s) {
break;
/* An illegal character */
/* Reverse string */
case 900:
if ((c = nextchar(s)) == 0) {
/* add_error(0,"Unterminated character constant", string_start); */
return 0;
}
if (c == '`') {
return(SWIG_TOKEN_RSTRING);
}
break;
default:
return SWIG_TOKEN_ILLEGAL;
}

View file

@ -158,6 +158,7 @@ extern void SwigScanner_idstart(SwigScanner *, char *idchar);
#define SWIG_TOKEN_AT 45
#define SWIG_TOKEN_DOLLAR 46
#define SWIG_TOKEN_CODEBLOCK 47
#define SWIG_TOKEN_RSTRING 48
#define SWIG_TOKEN_ILLEGAL 98
#define SWIG_TOKEN_LAST 99