Hi Hua,
On 05/08/18 13:11, Hua Meng wrote:
--- a/dlls/msvcp120_app/msvcp120_app.spec +++ b/dlls/msvcp120_app/msvcp120_app.spec +@ cdecl -arch=win64 ?_Internal_assign@_Concurrent_vector_base_v4@details@Concurrency@@IEAAXAEBV123@_KP6AXPEAX1@ZP6AX2PEBX1@Z5@Z(ptr ptr long ptr ptr ptr) msvcp120. +@ cdecl -arch=arm ?_Internal_capacity@_Concurrent_vector_base_v4@details@Concurrency@@IBAIXZ(ptr) msvcp120.?_Internal_assign@_Concurrent_vector_base_v4@details@Concurrency@@IEAAXAEBV123@_KP6AXPEAX1@ZP6AX2PEBX1@Z5@Z
The _Internal_assign and _Internal_capacity spec file entries got mixed. You can use wine_src/tools/make_specfiles script to generate this file.
+typedef struct +{
- void *storage[3];
- MSVCP_size_t first_block;
- MSVCP_size_t early_size;
- void **segment;
+} _Concurrent_vector_base_v4;
This structure needs to have the allocator function pointer as first argument. The structure should look like this: typedef struct { void* (__cdecl *allocator)(_Concurrent_vector_base_v4*, MSVCP_size_t); void *storage[3]; MSVCP_size_t first_block; MSVCP_size_t early_size; void** segment; } _Concurrent_vector_base_v4;
+void __thiscall _Concurrent_vector_base_v4__Internal_resize(
_Concurrent_vector_base_v4 *this, MSVCP_size_t len1, MSVCP_size_t len2,
MSVCP_size_t len3, void (__cdecl *clear)(void *, MSVCP_size_t),
void (__cdecl *copy)(void *, void const *, MSVCP_size_t), void const *v)
+{
- FIXME("%p %ld %ld %ld %p %p %p", this, len1, len2, len3, clear, copy, v);
+}
Could you please change the fixme message to be consistent (add parenthesis and stub)?
Thanks, Piotr