[PATCH] msvcrt: Implement _ispunct_l().

Chip Davis cdavis at codeweavers.com
Tue Dec 10 21:07:22 CST 2019


Signed-off-by: Chip Davis <cdavis at codeweavers.com>
---
 .../api-ms-win-crt-string-l1-1-0.spec                     | 2 +-
 dlls/msvcr100/msvcr100.spec                               | 2 +-
 dlls/msvcr110/msvcr110.spec                               | 2 +-
 dlls/msvcr120/msvcr120.spec                               | 2 +-
 dlls/msvcr120_app/msvcr120_app.spec                       | 2 +-
 dlls/msvcr80/msvcr80.spec                                 | 2 +-
 dlls/msvcr90/msvcr90.spec                                 | 2 +-
 dlls/msvcrt/ctype.c                                       | 8 ++++++++
 dlls/ucrtbase/ucrtbase.spec                               | 2 +-
 9 files changed, 16 insertions(+), 8 deletions(-)

diff --git a/dlls/api-ms-win-crt-string-l1-1-0/api-ms-win-crt-string-l1-1-0.spec b/dlls/api-ms-win-crt-string-l1-1-0/api-ms-win-crt-string-l1-1-0.spec
index ead56fbcb5a..42f3ed34ab4 100644
--- a/dlls/api-ms-win-crt-string-l1-1-0/api-ms-win-crt-string-l1-1-0.spec
+++ b/dlls/api-ms-win-crt-string-l1-1-0/api-ms-win-crt-string-l1-1-0.spec
@@ -16,7 +16,7 @@
 @ cdecl _isleadbyte_l(long ptr) ucrtbase._isleadbyte_l
 @ cdecl _islower_l(long ptr) ucrtbase._islower_l
 @ cdecl _isprint_l(long ptr) ucrtbase._isprint_l
-@ stub _ispunct_l
+@ cdecl _ispunct_l(long ptr) ucrtbase._ispunct_l
 @ cdecl _isspace_l(long ptr) ucrtbase._isspace_l
 @ cdecl _isupper_l(long ptr) ucrtbase._isupper_l
 @ cdecl _iswalnum_l(long ptr) ucrtbase._iswalnum_l
diff --git a/dlls/msvcr100/msvcr100.spec b/dlls/msvcr100/msvcr100.spec
index 63c3a9d8a06..560e14b33b8 100644
--- a/dlls/msvcr100/msvcr100.spec
+++ b/dlls/msvcr100/msvcr100.spec
@@ -1013,7 +1013,7 @@
 @ cdecl _isnan(double) MSVCRT__isnan
 @ cdecl -arch=x86_64 _isnanf(float) MSVCRT__isnanf
 @ cdecl _isprint_l(long ptr) MSVCRT__isprint_l
-@ stub _ispunct_l
+@ cdecl _ispunct_l(long ptr) MSVCRT__ispunct_l
 @ cdecl _isspace_l(long ptr) MSVCRT__isspace_l
 @ cdecl _isupper_l(long ptr) MSVCRT__isupper_l
 @ cdecl _iswalnum_l(long ptr) MSVCRT__iswalnum_l
diff --git a/dlls/msvcr110/msvcr110.spec b/dlls/msvcr110/msvcr110.spec
index 366c7717463..2316535e5d1 100644
--- a/dlls/msvcr110/msvcr110.spec
+++ b/dlls/msvcr110/msvcr110.spec
@@ -1359,7 +1359,7 @@
 @ cdecl _isnan(double) MSVCRT__isnan
 @ cdecl -arch=x86_64 _isnanf(float) MSVCRT__isnanf
 @ cdecl _isprint_l(long ptr) MSVCRT__isprint_l
-@ stub _ispunct_l
+@ cdecl _ispunct_l(long ptr) MSVCRT__ispunct_l
 @ cdecl _isspace_l(long ptr) MSVCRT__isspace_l
 @ cdecl _isupper_l(long ptr) MSVCRT__isupper_l
 @ cdecl _iswalnum_l(long ptr) MSVCRT__iswalnum_l
diff --git a/dlls/msvcr120/msvcr120.spec b/dlls/msvcr120/msvcr120.spec
index 07ff5abdff5..903f4b7ce38 100644
--- a/dlls/msvcr120/msvcr120.spec
+++ b/dlls/msvcr120/msvcr120.spec
@@ -1364,7 +1364,7 @@
 @ cdecl _isnan(double) MSVCRT__isnan
 @ cdecl -arch=x86_64 _isnanf(float) MSVCRT__isnanf
 @ cdecl _isprint_l(long ptr) MSVCRT__isprint_l
-@ stub _ispunct_l
+@ cdecl _ispunct_l(long ptr) MSVCRT__ispunct_l
 @ cdecl _isspace_l(long ptr) MSVCRT__isspace_l
 @ cdecl _isupper_l(long ptr) MSVCRT__isupper_l
 @ cdecl _iswalnum_l(long ptr) MSVCRT__iswalnum_l
diff --git a/dlls/msvcr120_app/msvcr120_app.spec b/dlls/msvcr120_app/msvcr120_app.spec
index 89d240b567e..63a4ccfacf2 100644
--- a/dlls/msvcr120_app/msvcr120_app.spec
+++ b/dlls/msvcr120_app/msvcr120_app.spec
@@ -1229,7 +1229,7 @@
 @ cdecl _isnan(double) msvcr120._isnan
 @ cdecl -arch=x86_64 _isnanf(float) msvcr120._isnanf
 @ cdecl _isprint_l(long ptr) msvcr120._isprint_l
-@ stub _ispunct_l
+@ cdecl _ispunct_l(long ptr) msvcr120._ispunct_l
 @ cdecl _isspace_l(long ptr) msvcr120._isspace_l
 @ cdecl _isupper_l(long ptr) msvcr120._isupper_l
 @ cdecl _iswalnum_l(long ptr) msvcr120._iswalnum_l
diff --git a/dlls/msvcr80/msvcr80.spec b/dlls/msvcr80/msvcr80.spec
index 14ed7f35532..402e6efc109 100644
--- a/dlls/msvcr80/msvcr80.spec
+++ b/dlls/msvcr80/msvcr80.spec
@@ -685,7 +685,7 @@
 @ cdecl _isnan(double) MSVCRT__isnan
 @ cdecl -arch=x86_64 _isnanf(float) MSVCRT__isnanf
 @ cdecl _isprint_l(long ptr) MSVCRT__isprint_l
-@ stub _ispunct_l
+@ cdecl _ispunct_l(long ptr) MSVCRT__ispunct_l
 @ cdecl _isspace_l(long ptr) MSVCRT__isspace_l
 @ cdecl _isupper_l(long ptr) MSVCRT__isupper_l
 @ cdecl _iswalnum_l(long ptr) MSVCRT__iswalnum_l
diff --git a/dlls/msvcr90/msvcr90.spec b/dlls/msvcr90/msvcr90.spec
index acb976a7b02..8a079abe254 100644
--- a/dlls/msvcr90/msvcr90.spec
+++ b/dlls/msvcr90/msvcr90.spec
@@ -663,7 +663,7 @@
 @ cdecl _isnan(double) MSVCRT__isnan
 @ cdecl -arch=x86_64 _isnanf(float) MSVCRT__isnanf
 @ cdecl _isprint_l(long ptr) MSVCRT__isprint_l
-@ stub _ispunct_l
+@ cdecl _ispunct_l(long ptr) MSVCRT__ispunct_l
 @ cdecl _isspace_l(long ptr) MSVCRT__isspace_l
 @ cdecl _isupper_l(long ptr) MSVCRT__isupper_l
 @ cdecl _iswalnum_l(long ptr) MSVCRT__iswalnum_l
diff --git a/dlls/msvcrt/ctype.c b/dlls/msvcrt/ctype.c
index 3b037aa8de2..9e2d029950e 100644
--- a/dlls/msvcrt/ctype.c
+++ b/dlls/msvcrt/ctype.c
@@ -244,6 +244,14 @@ int CDECL MSVCRT_ispunct(int c)
   return MSVCRT__isctype( c, MSVCRT__PUNCT );
 }
 
+/*********************************************************************
+ *		_ispunct_l (MSVCR80.@)
+ */
+int CDECL MSVCRT__ispunct_l(int c, MSVCRT__locale_t locale)
+{
+  return MSVCRT__isctype_l( c, MSVCRT__PUNCT, locale );
+}
+
 /*********************************************************************
  *		_isspace_l (MSVCRT.@)
  */
diff --git a/dlls/ucrtbase/ucrtbase.spec b/dlls/ucrtbase/ucrtbase.spec
index a262cc63459..1293dd62f16 100644
--- a/dlls/ucrtbase/ucrtbase.spec
+++ b/dlls/ucrtbase/ucrtbase.spec
@@ -503,7 +503,7 @@
 @ cdecl _isnan(double) MSVCRT__isnan
 @ cdecl -arch=x86_64 _isnanf(float) MSVCRT__isnanf
 @ cdecl _isprint_l(long ptr) MSVCRT__isprint_l
-@ stub _ispunct_l
+@ cdecl _ispunct_l(long ptr) MSVCRT__ispunct_l
 @ cdecl _isspace_l(long ptr) MSVCRT__isspace_l
 @ cdecl _isupper_l(long ptr) MSVCRT__isupper_l
 @ cdecl _iswalnum_l(long ptr) MSVCRT__iswalnum_l
-- 
2.24.0




More information about the wine-devel mailing list