svn commit: r215568 - head/bin/sh

Jilles Tjoelker jilles at FreeBSD.org
Sat Nov 20 14:30:29 UTC 2010


Author: jilles
Date: Sat Nov 20 14:30:28 2010
New Revision: 215568
URL: http://svn.freebsd.org/changeset/base/215568

Log:
  sh: Remove the check that alpha/name/in_name chars are not CTL* bytes.
  
  Since is_alpha/is_name/is_in_name were made ASCII-only, this can no longer
  happen.
  
  Additionally, the check was wrong because it did not include the new
  CTLQUOTEEND.

Modified:
  head/bin/sh/mksyntax.c

Modified: head/bin/sh/mksyntax.c
==============================================================================
--- head/bin/sh/mksyntax.c	Sat Nov 20 14:14:52 2010	(r215567)
+++ head/bin/sh/mksyntax.c	Sat Nov 20 14:30:28 2010	(r215568)
@@ -342,9 +342,9 @@ print(const char *name)
 static const char *macro[] = {
 	"#define is_digit(c)\t((is_type+SYNBASE)[(int)c] & ISDIGIT)",
 	"#define is_eof(c)\t((c) == PEOF)",
-	"#define is_alpha(c)\t(((c) < CTLESC || (c) > CTLQUOTEMARK) && (is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER))",
-	"#define is_name(c)\t(((c) < CTLESC || (c) > CTLQUOTEMARK) && (is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER|ISUNDER))",
-	"#define is_in_name(c)\t(((c) < CTLESC || (c) > CTLQUOTEMARK) && (is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER|ISUNDER|ISDIGIT))",
+	"#define is_alpha(c)\t((is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER))",
+	"#define is_name(c)\t((is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER|ISUNDER))",
+	"#define is_in_name(c)\t((is_type+SYNBASE)[(int)c] & (ISUPPER|ISLOWER|ISUNDER|ISDIGIT))",
 	"#define is_special(c)\t((is_type+SYNBASE)[(int)c] & (ISSPECL|ISDIGIT))",
 	NULL
 };


More information about the svn-src-head mailing list