gcc/:
PR bootstrap/35855
* opt-functions.awk (BEGIN): New section.
(lower, upper, digit, alnum): New variables.
(static_var, opt_sanitized_name): Use alnum instead of character
classes, for non-C locale.
* optc-gen.awk: Likewise.
* opth-gen.awk: Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165322
138bc75d-0d04-0410-961f-
82ee72b054a4
+2010-10-11 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ PR bootstrap/35855
+ * opt-functions.awk (BEGIN): New section.
+ (lower, upper, digit, alnum): New variables.
+ (static_var, opt_sanitized_name): Use alnum instead of character
+ classes, for non-C locale.
+ * optc-gen.awk: Likewise.
+ * opth-gen.awk: Likewise.
+
2010-10-11 Anatoly Sokolov <aesok@post.ru>
* target.def (preferred_reload_class): New hook.
# Some common subroutines for use by opt[ch]-gen.awk.
+# Define some helpful character classes, for portability.
+BEGIN {
+ lower = "abcdefghijklmnopqrstuvwxyz"
+ upper = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
+ digit = "0123456789"
+ alnum = lower "" upper "" digit
+}
+
# Return nonzero if FLAGS contains a flag matching REGEX.
function flag_set_p(regex, flags)
{
{
if (global_state_p(flags) || !needs_state_p(flags))
return ""
- gsub ("[^A-Za-z0-9]", "_", name)
+ gsub ("[^" alnum "]", "_", name)
return "VAR_" name
}
# Given the option called NAME return a sanitized version of its name.
function opt_sanitized_name(name)
{
- gsub ("[^A-Za-z0-9]", "_", name)
+ gsub ("[^" alnum "]", "_", name)
return name
}
print "const char * const lang_names[] =\n{"
for (i = 0; i < n_langs; i++) {
macros[i] = "CL_" langs[i]
- gsub( "[^A-Za-z0-9_]", "X", macros[i] )
+ gsub( "[^" alnum "_]", "X", macros[i] )
s = substr(" ", length (macros[i]))
print " " quote langs[i] quote ","
}
n_target_other = 0;
for (i = 0; i < n_target_save; i++) {
- if (target_save_decl[i] ~ "^((un)?signed +)?int +[_a-zA-Z0-9]+$")
+ if (target_save_decl[i] ~ "^((un)?signed +)?int +[_" alnum "]+$")
var_target_int[n_target_int++] = target_save_decl[i];
- else if (target_save_decl[i] ~ "^((un)?signed +)?short +[_a-zA-Z0-9]+$")
+ else if (target_save_decl[i] ~ "^((un)?signed +)?short +[_" alnum "]+$")
var_target_short[n_target_short++] = target_save_decl[i];
- else if (target_save_decl[i] ~ "^((un)?signed +)?char +[_a-zA-Z0-9]+$")
+ else if (target_save_decl[i] ~ "^((un)?signed +)?char +[_ " alnum "]+$")
var_target_char[n_target_char++] = target_save_decl[i];
else
for (i = 0; i < n_langs; i++) {
macros[i] = "CL_" langs[i]
- gsub( "[^A-Za-z0-9_]", "X", macros[i] )
+ gsub( "[^" alnum "_]", "X", macros[i] )
s = substr(" ", length (macros[i]))
print "#define " macros[i] s " (1 << " i ")"
}