Alexandre Julliard
554e7aee72
msvcrt: Use the rint()/rintf() implementation from the bundled musl library.
2023-04-10 14:18:05 +02:00
Alexandre Julliard
b89b7b9aaf
msvcrt: Use the pow()/powf() implementation from the bundled musl library.
2023-04-07 17:05:52 +02:00
Alexandre Julliard
25c233ece4
msvcrt: Use the tan()/tanf() implementation from the bundled musl library.
2023-04-07 13:29:46 +02:00
Alexandre Julliard
6ec636f288
msvcrt: Use the cos()/cosf() implementation from the bundled musl library.
2023-04-07 13:29:46 +02:00
Alexandre Julliard
5ddd46592d
msvcrt: Use the sin()/sinf() implementation from the bundled musl library.
2023-04-07 13:29:46 +02:00
Alexandre Julliard
90c61c7cd2
msvcrt: Use the __cosdf() implementation from the bundled musl library.
...
With the changes from 9008cd2f24
.
2023-04-07 13:29:46 +02:00
Alexandre Julliard
b46bf3ffb1
msvcrt: Use the __sindf() implementation from the bundled musl library.
...
With the changes from ee7b5ebc3a
.
2023-04-07 13:29:46 +02:00
Alexandre Julliard
b9b19ea2db
msvcrt: Use the __rem_pio2()/__rem_pio2f() implementation from the bundled musl library.
2023-04-07 13:29:46 +02:00
Alexandre Julliard
8252be560e
msvcrt: Use the nexttoward()/nexttowardf() implementation from the bundled musl library.
...
Rename the musl functions to avoid compiler warnings about the
signature mismatch (double vs. long double).
2023-04-07 13:29:46 +02:00
Alexandre Julliard
85e655445b
msvcrt: Use the nextafter()/nextafterf() implementation from the bundled musl library.
2023-04-07 13:28:07 +02:00
Alexandre Julliard
cd29cd85ab
msvcrt: Use the ceil()/ceilf() implementation from the bundled musl library.
...
With the changes from 2a5e68ab80
.
2023-04-07 13:28:06 +02:00
Alexandre Julliard
70bcaec7dc
msvcrt: Use the floor()/floorf() implementation from the bundled musl library.
...
With the changes from 29c07324c1
.
2023-04-07 13:28:05 +02:00
Alexandre Julliard
9db27802c3
msvcrt: Use the round()/roundf() implementation from the bundled musl library.
...
With the changes from df9c11ffa8
.
2023-04-07 13:28:02 +02:00
Alexandre Julliard
a44bf343ba
msvcrt: Use the fma()/fmaf() implementation from the bundled musl library.
2023-04-06 14:32:45 +02:00
Alexandre Julliard
21cbe74b88
msvcrt: Use the log2()/log2f() implementation from the bundled musl library.
2023-04-06 14:32:44 +02:00
Alexandre Julliard
714874ba46
msvcrt: Use the log1p()/log1pf() implementation from the bundled musl library.
2023-04-06 14:32:44 +02:00
Alexandre Julliard
ca06438759
msvcrt: Use the exp2()/exp2f() implementation from the bundled musl library.
2023-04-06 14:32:44 +02:00
Alexandre Julliard
6148bf503b
msvcrt: Use the atan2()/atan2f() implementation from the bundled musl library.
2023-04-06 14:32:44 +02:00
Alexandre Julliard
03bdd6d52d
msvcrt: Use the sinh() implementation from the bundled musl library.
...
With the changes from 11166aa01e
.
2023-04-06 14:32:43 +02:00
Alexandre Julliard
9fd9ebcb7a
msvcrt: Use the cosh() implementation from the bundled musl library.
...
With the changes from 60d178b410
.
2023-04-06 14:32:42 +02:00
Alexandre Julliard
66bef6db20
msvcrt: Use the sinhf() implementation from the bundled musl library.
...
With the changes from 4fd9daea4a
.
2023-04-06 14:32:41 +02:00
Alexandre Julliard
248a17377c
msvcrt: Use the coshf() implementation from the bundled musl library.
...
With the changes from 361143252b
.
2023-04-06 14:32:39 +02:00
Alexandre Julliard
bbc8c34735
msvcrt: Use the __expo2()/__expo2f() implementation from the bundled musl library.
2023-04-06 14:32:39 +02:00
Alexandre Julliard
c53bd233f0
msvcrt: Use the log10()/log10f() implementation from the bundled musl library.
2023-04-06 14:32:39 +02:00
Alexandre Julliard
f0c700502a
msvcrt: Use the log()/logf() implementation from the bundled musl library.
2023-04-06 14:32:39 +02:00
Alexandre Julliard
b5bc026798
msvcrt: Use the fmod()/fmodf() implementation from the bundled musl library.
2023-04-05 16:51:47 +02:00
Alexandre Julliard
ec31d30ec0
msvcrt: Use the jn()/yn() implementation from the bundled musl library.
2023-04-05 16:51:47 +02:00
Alexandre Julliard
5895cb5e93
msvcrt: Use the j1()/y1() implementation from the bundled musl library.
2023-04-05 16:51:47 +02:00
Alexandre Julliard
c75a041044
msvcrt: Use the j0()/y0() implementation from the bundled musl library.
2023-04-05 16:51:47 +02:00
Alexandre Julliard
4ef90e94fd
msvcrt: Use the expm1()/expm1f() implementation from the bundled musl library.
2023-04-05 16:51:47 +02:00
Alexandre Julliard
dae30bd66d
msvcrt: Use the tgamma()/tgammaf() implementation from the bundled musl library.
2023-04-05 16:51:46 +02:00
Alexandre Julliard
442052fe18
msvcrt: Use the lgamma()/lgammaf() implementation from the bundled musl library.
2023-04-05 16:51:46 +02:00
Alexandre Julliard
f27f2d4e66
msvcrt: Use the remquo()/remquof() implementation from the bundled musl library.
2023-04-05 16:51:46 +02:00
Alexandre Julliard
1cff65b69f
msvcrt: Use the logb()/logbf() implementation from the bundled musl library.
2023-04-05 16:51:40 +02:00
Alexandre Julliard
d1ba9a30dc
msvcrt: Use the ilogb()/ilogbf() implementation from the bundled musl library.
2023-04-05 16:51:40 +02:00
Alexandre Julliard
52621691fd
msvcrt: Use the scalbn() implementation from the bundled musl library.
2023-04-05 16:51:40 +02:00
Alexandre Julliard
0750079ace
msvcrt: Use the nan()/nanf() implementation from the bundled musl library.
2023-04-05 16:51:40 +02:00
Alexandre Julliard
b5ba4baa51
msvcrt: Use the copysign()/copysignf() implementation from the bundled musl library.
2023-04-04 09:43:57 +02:00
Alexandre Julliard
233eea6cfa
msvcrt: Use the fdim()/fdimf() implementation from the bundled musl library.
2023-04-04 09:43:57 +02:00
Alexandre Julliard
5564512b09
msvcrt: Use the fmin()/fminf() implementation from the bundled musl library.
2023-04-04 09:43:57 +02:00
Alexandre Julliard
4a9258ee97
msvcrt: Use the fmax()/fmaxf() implementation from the bundled musl library.
2023-04-04 09:43:57 +02:00
Alexandre Julliard
0900667876
msvcrt: Use the trunc()/truncf() implementation from the bundled musl library.
2023-04-04 09:43:57 +02:00
Alexandre Julliard
15b50e98a4
msvcrt: Use the hypot()/hypotf() implementation from the bundled musl library.
2023-04-04 09:43:56 +02:00
Alexandre Julliard
406c583c3b
msvcrt: Use the cbrt()/cbrtf() implementation from the bundled musl library.
2023-04-04 09:43:56 +02:00
Alexandre Julliard
e5808e2036
msvcrt: Use the modf()/modff() implementation from the bundled musl library.
2023-04-04 09:43:56 +02:00
Alexandre Julliard
be147a806b
msvcrt: Use the frexp()/frexpf() implementation from the bundled musl library.
2023-04-04 09:43:56 +02:00
Alexandre Julliard
b7228259f8
msvcrt: Use the fabs()/fabsf() implementation from the bundled musl library.
2023-04-04 09:43:54 +02:00
Torge Matthies
9e86596714
msvcr100: Implement _StructuredTaskCollection::_IsCanceling.
...
Signed-off-by: Torge Matthies <tmatthies@codeweavers.com>
2023-03-29 22:29:37 +02:00
Torge Matthies
58d516f00f
msvcr100: Implement _StructuredTaskCollection canceling.
...
Signed-off-by: Torge Matthies <tmatthies@codeweavers.com>
2023-03-29 22:29:37 +02:00
Torge Matthies
a3fc7a423f
msvcr100: Use enum for _StructuredTaskCollection status bits.
...
Signed-off-by: Torge Matthies <tmatthies@codeweavers.com>
2023-03-29 22:29:37 +02:00
Torge Matthies
c71dca838e
msvcr100: Use enum for _StructuredTaskCollection return value.
...
Signed-off-by: Torge Matthies <tmatthies@codeweavers.com>
2023-03-29 22:29:37 +02:00
Torge Matthies
fc2fa4fb02
msvcr100: Only wake task collection waiters when finished >= count.
...
Signed-off-by: Torge Matthies <tmatthies@codeweavers.com>
2023-03-29 22:29:37 +02:00
Vijay Kiran Kamuju
8426109a43
msvcr100: Add _UnrealizedChore::_CheckTaskCollection stub.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53794
2023-03-28 15:29:56 +02:00
Piotr Caban
75669ea34a
ucrtbase: Add __CxxFrameHandler4 implementation.
2023-03-27 11:02:50 +02:00
Rémi Bernon
aafef01cc2
msvcrt: Fix _wdupenv_s behavior with missing env var.
2023-02-23 17:27:29 +01:00
Rémi Bernon
5a08eab303
msvcrt: Fix _dupenv_s behavior with missing env var.
2023-02-23 17:27:29 +01:00
Piotr Caban
667d889d3a
msvcrt: Improve error handling in _wgetenv_s.
2023-02-15 21:48:33 +01:00
Piotr Caban
b7a586771b
msvcrt: Improve error handling in getenv_s.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54486
2023-02-15 21:48:33 +01:00
Piotr Caban
d812af3f12
msvcrt: Don't crash on NULL argument in _wgetenv.
2023-02-15 21:48:33 +01:00
Piotr Caban
86fb5c7ba6
msvcrt: Don't crash on NULL argument in getenv.
2023-02-15 21:48:33 +01:00
Jinoh Kang
b6a26817bc
include/msvcrt: Add noreturn attribute to _assert.
...
This informs the compiler that no code following an assertion failure
will execute (unless NDEBUG is defined), which increases the accuracy of
compiler warnings and static analyses.
For assert.h, put DECLSPEC_NORETURN before the return type in the
function declaration to remain consistent with other MSVCRT function
declarations.
2023-01-30 18:55:57 +01:00
Alex Henrie
261d7418a8
msvcrt: Change return type of _ctime32_s and _ctime64_s to errno_t.
2023-01-25 13:10:03 +01:00
Alexandre Julliard
468d68d60d
msvcrt: Consistently use %I printf format for ULONG_PTR values.
2022-12-09 17:52:25 +01:00
Torge Matthies
a261c043eb
msvcr120: Throw exception in ~_StructuredTaskCollection if _RunAndWait was not called.
2022-12-08 18:41:25 +01:00
Torge Matthies
cef3dcbddd
msvcr100: Implement missing_wait exception.
2022-12-08 18:41:25 +01:00
Torge Matthies
d1468c2b60
msvcr110: Implement _StructuredTaskCollection constructor.
2022-12-08 18:41:25 +01:00
Torge Matthies
f26985affe
msvcr100: Implement exception passing from chore threads to _RunAndWait.
2022-12-08 18:41:25 +01:00
Torge Matthies
96e2a766f8
msvcr100: Factor out EXCEPTION_RECORD to exception_ptr conversion.
2022-12-08 18:41:25 +01:00
Torge Matthies
1163168034
msvcr100: Move exception_ptr functions to a separate file.
2022-12-08 18:41:25 +01:00
Torge Matthies
11af5b750c
msvcr100: Implement _StructuredTaskCollection::_RunAndWait.
2022-12-08 18:41:25 +01:00
Alexandre Julliard
755d783339
msvcrt: Fix printf format warnings on ARM platforms.
2022-12-08 18:11:23 +01:00
Piotr Caban
0c3653bbcd
msvcrt: Construct a real C++ object to test against.
...
This fixes GCC12 warnings about accessing a too small object.
wine/dlls/msvcrt/tests/cpp.c: In function 'test_rtti':
wine/dlls/msvcrt/tests/cpp.c:1036:45: warning: array subscript 2 is outside array bounds of 'void[4]' [-Warray-bounds]
1036 | ok (casted == (char*)&child_class_sig0+8, "failed cast to simple_class (%p %p)\n", casted, &child_class_sig0);
| ~~~~~~~~~~~~~~~~~~~~~~~~^~
Signed-off-by: Piotr Caban <piotr.caban@codeweavers.com>
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-12-07 23:20:39 +01:00
Rémi Bernon
996c115217
msvcrt: Use operator_delete to free _Condition_variable queue nodes.
2022-12-03 00:05:16 +01:00
Michel Zou
53bc6c7a4a
msvcrt: Fix errno set on dup from read-only file.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53950
2022-11-30 20:38:27 +01:00
Eric Pouech
d1eb78a75d
ucrtbase: Handle undecoration of function's reference qualifiers (C++11).
...
Introducing get_function_qualifier().
Feature is not available in msvcrt.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-11-21 18:03:53 +01:00
Eric Pouech
56b973cdb9
msvcrt: Rename modifier into qualifier.
...
That's how they are defined in C/C++ standard.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-11-21 18:03:53 +01:00
Bartosz Kosiorek
8590023041
msvcrt: Add _vcwprintf_l implementation.
2022-11-16 21:24:19 +01:00
Bartosz Kosiorek
af7aaba0bf
msvcrt: Add _vcprintf_l implementation.
2022-11-16 21:24:19 +01:00
Bartosz Kosiorek
69ce7894fb
msvcrt: Add _scwprintf_p implementation.
2022-11-16 21:24:19 +01:00
Bartosz Kosiorek
78e5efd037
msvcrt: Add _scwprintf_p_l implementation.
2022-11-16 21:24:19 +01:00
Bartosz Kosiorek
1faad02cf1
msvcrt: Add _scwprintf_l implementation.
2022-11-16 21:24:19 +01:00
Alexandre Julliard
89cad8c4b7
msvcrt: Use WINAPIV calling convention for variadic functions.
2022-11-07 20:15:02 +01:00
Alex Henrie
26c9879a6c
msvcrt: Change return type of wcsncat_s to errno_t.
2022-11-03 18:33:09 +01:00
Alex Henrie
4db1aeb550
msvcrt: Change return type of freopen_s to errno_t.
2022-11-03 18:33:09 +01:00
Alex Henrie
52066ef248
msvcrt: Change return type of _splitpath_s to errno_t.
2022-11-03 18:33:09 +01:00
Fabian Maurer
5d21966b9f
msvcrt/tests: Fix typo (Coverity).
...
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
2022-11-02 16:00:01 +01:00
Piotr Caban
7f5f904cfa
msvcrt: Fix errno set on write to read-only file.
2022-11-02 14:40:10 +01:00
Piotr Caban
3fd47b4663
msvcrt: Fix errno set on read from write-only file.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53677
2022-11-02 14:40:10 +01:00
Bartosz Kosiorek
7be72ce2a7
msvcrt: Add _swprintf_p_l implementation.
2022-11-01 20:50:05 +01:00
Bartosz Kosiorek
e2911c5ee6
msvcrt: Add _scprintf_p_l implementation.
2022-11-01 20:50:01 +01:00
Bartosz Kosiorek
3ac9ff07af
msvcrt: Add _scprintf_p implementation.
2022-11-01 20:49:58 +01:00
Bartosz Kosiorek
25d44dd397
msvcrt: Add _scprintf_l implementation.
2022-11-01 20:49:54 +01:00
Bartosz Kosiorek
74252df967
msvcrt: Add _fwprintf_s_l implementation.
2022-11-01 20:49:50 +01:00
Bartosz Kosiorek
2b19ff5c68
msvcrt: Add _fwprintf_p_l implementation.
2022-11-01 20:49:46 +01:00
Bartosz Kosiorek
630b9f8ec0
msvcrt: Add _fwprintf_p implementation.
2022-11-01 20:49:42 +01:00
Bartosz Kosiorek
33551b28a5
msvcrt: Add _fprintf_s_l implementation.
2022-11-01 20:49:38 +01:00
Bartosz Kosiorek
03ae830653
msvcrt: Add _fprintf_p_l implementation.
2022-11-01 20:49:34 +01:00
Bartosz Kosiorek
f043fc32c9
msvcrt: Add _fprintf_p implementation.
2022-11-01 20:49:31 +01:00
Bartosz Kosiorek
52e2a53575
msvcrt: Add _fprintf_l implementation.
2022-11-01 20:49:27 +01:00
Bartosz Kosiorek
dbb01a74e0
msvcrt: Add _mbctokata_l implementation.
2022-10-31 20:41:45 +01:00