summaryrefslogtreecommitdiff
path: root/src/cmd/cc
diff options
context:
space:
mode:
authorKen Thompson <ken@golang.org>2008-06-24 17:16:06 -0700
committerKen Thompson <ken@golang.org>2008-06-24 17:16:06 -0700
commit33c428e6a78582ca4b8ea11c1da089f8837e5aad (patch)
tree765411223cf151b3ea6390deb10eb2da4da68a7b /src/cmd/cc
parent628e3f6c0333f3a678b49a82675083e9d1557369 (diff)
downloadgolang-33c428e6a78582ca4b8ea11c1da089f8837e5aad.tar.gz
middle dot as alpha package separator
SVN=124419
Diffstat (limited to 'src/cmd/cc')
-rw-r--r--src/cmd/cc/lexbody16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/cmd/cc/lexbody b/src/cmd/cc/lexbody
index f7ba6d0fc..3a38e2ae9 100644
--- a/src/cmd/cc/lexbody
+++ b/src/cmd/cc/lexbody
@@ -232,6 +232,16 @@ lookup(void)
return s;
}
+int
+ISALPHA(int c)
+{
+ if(isalpha(c))
+ return 1;
+ if(c >= Runeself)
+ return 1;
+ return 0;
+}
+
long
yylex(void)
{
@@ -259,7 +269,7 @@ l1:
}
goto l0;
}
- if(isalpha(c))
+ if(ISALPHA(c))
goto talph;
if(isdigit(c))
goto tnum;
@@ -275,7 +285,7 @@ l1:
case '.':
c = GETC();
- if(isalpha(c)) {
+ if(ISALPHA(c)) {
cp = symb;
*cp++ = '.';
goto aloop;
@@ -296,7 +306,7 @@ l1:
aloop:
*cp++ = c;
c = GETC();
- if(isalpha(c) || isdigit(c) || c == '_' || c == '$')
+ if(ISALPHA(c) || isdigit(c) || c == '_' || c == '$')
goto aloop;
*cp = 0;
peekc = c;