summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Smith <psmith@gnu.org>2013-10-26 00:10:17 -0400
committerPaul Smith <psmith@gnu.org>2013-10-27 17:43:21 -0400
commit9d58570c77240fed53d1f88217877f8e778f4bb2 (patch)
treedde26bb0aa35ebc2f7790f434f0e94a93ee18577
parentd49ab08ae027b241966b6ab9cc4514efefae829e (diff)
downloadgunmake-9d58570c77240fed53d1f88217877f8e778f4bb2.tar.gz
* makeint.h (STOP_SET): [SV 40371] Cast to unsigned char.
* tests/scripts/misc/utf8: Test variable names with characters >127. Fix suggested by Robert Bogomip <bob.bogo@milohedge.com>
-rw-r--r--makeint.h2
-rw-r--r--tests/scripts/misc/utf814
2 files changed, 15 insertions, 1 deletions
diff --git a/makeint.h b/makeint.h
index 77f51e0..c591427 100644
--- a/makeint.h
+++ b/makeint.h
@@ -415,7 +415,7 @@ extern int unixy_shell;
# define MAP_VMSCOMMA 0x0000
#endif
-#define STOP_SET(_v,_m) ANY_SET (stopchar_map[(int)(_v)],(_m))
+#define STOP_SET(_v,_m) ANY_SET (stopchar_map[(unsigned char)(_v)],(_m))
#if defined(HAVE_SYS_RESOURCE_H) && defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT)
# define SET_STACK_SIZE
diff --git a/tests/scripts/misc/utf8 b/tests/scripts/misc/utf8
new file mode 100644
index 0000000..2adcd07
--- /dev/null
+++ b/tests/scripts/misc/utf8
@@ -0,0 +1,14 @@
+# -*-perl-*-
+$description = "Test utf8 handling.";
+
+$details = "";
+
+# Variable names containing UTF8 characters
+run_make_test("
+\xe2\x96\xaa := hello
+\$(info \$(\xe2\x96\xaa))
+all:
+",
+ '', "hello\n#MAKE#: Nothing to be done for 'all'.");
+
+1;