diff -ur lua-5.3.4.orig/src/lctype.h lua-5.3.4/src/lctype.h
--- lctype.h.orig	2017-10-24 15:14:50.724139638 +0200
+++ lctype.h	2017-10-24 15:15:51.704137138 +0200
@@ -53,9 +53,11 @@
 
 /*
 ** 'lalpha' (Lua alphabetic) and 'lalnum' (Lua alphanumeric) both include '_'
+**
+** all utf-8 chars (greater than 0x7f) are always alphabetic
 */
-#define lislalpha(c)	testprop(c, MASK(ALPHABIT))
-#define lislalnum(c)	testprop(c, (MASK(ALPHABIT) | MASK(DIGITBIT)))
+#define lislalpha(c)	(isalpha(c) || (c) == '_' || (c) > 0x7f)
+#define lislalnum(c)	(isalnum(c) || (c) == '_' || (c) > 0x7f)
 #define lisdigit(c)	testprop(c, MASK(DIGITBIT))
 #define lisspace(c)	testprop(c, MASK(SPACEBIT))
 #define lisprint(c)	testprop(c, MASK(PRINTBIT))
