summaryrefslogtreecommitdiff
path: root/src/cmd/gc/lex.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/gc/lex.c')
-rw-r--r--src/cmd/gc/lex.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/cmd/gc/lex.c b/src/cmd/gc/lex.c
index 05671cc38..586dc47d5 100644
--- a/src/cmd/gc/lex.c
+++ b/src/cmd/gc/lex.c
@@ -811,10 +811,13 @@ talph:
cp[c1++] = c;
if(fullrune(cp, c1)) {
chartorune(&rune, cp);
- if(isfrog(rune)) {
- yyerror("illegal character 0x%ux", rune);
- goto l0;
- }
+ if(isfrog(rune)) {
+ yyerror("illegal character 0x%ux", rune);
+ goto l0;
+ }
+ // 0xb7 ยท is used for internal names
+ if(!isalpharune(c) && !isdigitrune(c) && c != 0xb7)
+ yyerror("invalid identifier character 0x%ux", rune);
break;
}
c = getc();