aboutsummaryrefslogtreecommitdiffstats
path: root/dfa.c
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2011-10-24 05:53:12 +0200
committerArnold D. Robbins <arnold@skeeve.com>2011-10-24 05:53:12 +0200
commitfe18d21be4bb5d92eb45b10a5fe37b2d908c706f (patch)
treef9e57c50bab1d47807d7414ab6e6f41a522d9602 /dfa.c
parent9773d7150bc164f72806b2b31fc5f43a4a115721 (diff)
downloadegawk-fe18d21be4bb5d92eb45b10a5fe37b2d908c706f.tar.gz
egawk-fe18d21be4bb5d92eb45b10a5fe37b2d908c706f.tar.bz2
egawk-fe18d21be4bb5d92eb45b10a5fe37b2d908c706f.zip
Additional VMS fixes.
Diffstat (limited to 'dfa.c')
-rw-r--r--dfa.c15
1 files changed, 13 insertions, 2 deletions
diff --git a/dfa.c b/dfa.c
index 96bba214..789c6b91 100644
--- a/dfa.c
+++ b/dfa.c
@@ -79,7 +79,6 @@
#define iswalnum isalnum
#define iswalpha isalpha
#define iswupper isupper
-#define wcscoll strcmp
#endif /* ! MBS_SUPPORT */
#endif /* GAWK */
@@ -147,7 +146,19 @@ static int iswctype(wint_t wc, wctype_t desc)
}
}
-static
+static int wcscoll(const wchar_t *ws1, const wchar_t *ws2)
+{
+ size_t i;
+
+ for (i = 0; ws1[i] != 0 && ws2[i] != 0; i++) {
+ if (ws1[i] < ws2[i])
+ return -1;
+ else if (ws1[i] > ws2[i])
+ return 1;
+ }
+
+ return (ws1[i] - ws2[i]);
+}
#endif /* ! MBS_SUPPORT */
#endif /* GAWK */