summaryrefslogtreecommitdiff
path: root/usr/src/cmd/localedef/parser.y
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/cmd/localedef/parser.y')
-rw-r--r--usr/src/cmd/localedef/parser.y21
1 files changed, 9 insertions, 12 deletions
diff --git a/usr/src/cmd/localedef/parser.y b/usr/src/cmd/localedef/parser.y
index 9a7fa80f7f..ae3a827ae6 100644
--- a/usr/src/cmd/localedef/parser.y
+++ b/usr/src/cmd/localedef/parser.y
@@ -307,21 +307,18 @@ ctype_kw : T_ISUPPER cc_list T_NL
| T_TOLOWER conv_list T_NL
;
+cc_list : cc_list T_SEMI cc_range_end
+ | cc_list T_SEMI cc_char
+ | cc_char
+ ;
-cc_list : cc_list T_SEMI T_CHAR
+cc_range_end : T_ELLIPSIS T_SEMI T_CHAR
{
- add_ctype($3);
+ add_ctype_range($3);
}
- | cc_list T_SEMI T_SYMBOL
- {
- add_charmap_undefined($3);
- }
- | cc_list T_SEMI T_ELLIPSIS T_SEMI T_CHAR
- {
- /* note that the endpoints *must* be characters */
- add_ctype_range($5);
- }
- | T_CHAR
+ ;
+
+cc_char : T_CHAR
{
add_ctype($1);
}