Module: wine Branch: master Commit: 1d583004787e59cca8a86ebf838921408eaf8c2e URL: https://gitlab.winehq.org/wine/wine/-/commit/1d583004787e59cca8a86ebf8389214...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Nov 2 12:07:30 2023 +0100
msvcrt: Use the public definitions for the UNDNAME_ flags.
---
dlls/msvcrt/cpp.c | 3 +++ dlls/msvcrt/msvcrt.h | 20 -------------------- dlls/msvcrt/undname.c | 11 +++++------ include/imagehlp.h | 34 +++++++++++++++++----------------- 4 files changed, 25 insertions(+), 43 deletions(-)
diff --git a/dlls/msvcrt/cpp.c b/dlls/msvcrt/cpp.c index 4c46b3d4e86..ce89f5fb0b4 100644 --- a/dlls/msvcrt/cpp.c +++ b/dlls/msvcrt/cpp.c @@ -24,6 +24,9 @@
#include "windef.h" #include "winternl.h" +#include "winbase.h" +#include "winver.h" +#include "imagehlp.h" #include "wine/exception.h" #include "wine/debug.h" #include "msvcrt.h" diff --git a/dlls/msvcrt/msvcrt.h b/dlls/msvcrt/msvcrt.h index 0e2edc631e9..7c2dd4835f5 100644 --- a/dlls/msvcrt/msvcrt.h +++ b/dlls/msvcrt/msvcrt.h @@ -359,26 +359,6 @@ printf_arg arg_clbk_positional(void*, int, int, va_list*);
extern char* __cdecl __unDName(char *,const char*,int,malloc_func_t,free_func_t,unsigned short int);
-/* __unDName/__unDNameEx flags */ -#define UNDNAME_COMPLETE (0x0000) -#define UNDNAME_NO_LEADING_UNDERSCORES (0x0001) /* Don't show __ in calling convention */ -#define UNDNAME_NO_MS_KEYWORDS (0x0002) /* Don't show calling convention at all */ -#define UNDNAME_NO_FUNCTION_RETURNS (0x0004) /* Don't show function/method return value */ -#define UNDNAME_NO_ALLOCATION_MODEL (0x0008) -#define UNDNAME_NO_ALLOCATION_LANGUAGE (0x0010) -#define UNDNAME_NO_MS_THISTYPE (0x0020) -#define UNDNAME_NO_CV_THISTYPE (0x0040) -#define UNDNAME_NO_THISTYPE (0x0060) -#define UNDNAME_NO_ACCESS_SPECIFIERS (0x0080) /* Don't show access specifier (public/protected/private) */ -#define UNDNAME_NO_THROW_SIGNATURES (0x0100) -#define UNDNAME_NO_MEMBER_TYPE (0x0200) /* Don't show static/virtual specifier */ -#define UNDNAME_NO_RETURN_UDT_MODEL (0x0400) -#define UNDNAME_32_BIT_DECODE (0x0800) -#define UNDNAME_NAME_ONLY (0x1000) /* Only report the variable/method name */ -#define UNDNAME_NO_ARGUMENTS (0x2000) /* Don't show method arguments */ -#define UNDNAME_NO_SPECIAL_SYMS (0x4000) -#define UNDNAME_NO_COMPLEX_TYPE (0x8000) - #define UCRTBASE_PRINTF_MASK ( \ _CRT_INTERNAL_PRINTF_LEGACY_VSPRINTF_NULL_TERMINATION | \ _CRT_INTERNAL_PRINTF_STANDARD_SNPRINTF_BEHAVIOR | \ diff --git a/dlls/msvcrt/undname.c b/dlls/msvcrt/undname.c index 5a7283caac7..89052d433b0 100644 --- a/dlls/msvcrt/undname.c +++ b/dlls/msvcrt/undname.c @@ -23,16 +23,13 @@ #include <stdio.h> #include <stdlib.h> #include "msvcrt.h" +#include "winver.h" +#include "imagehlp.h"
#include "wine/debug.h"
WINE_DEFAULT_DEBUG_CHANNEL(msvcrt);
-/* TODO: - * - document a bit (grammar + functions) - * - back-port this new code into tools/winedump/msmangle.c - */ - /* How data types qualifiers are stored: * M (in the following definitions) is defined for * 'A', 'B', 'C' and 'D' as follows @@ -48,9 +45,11 @@ WINE_DEFAULT_DEBUG_CHANNEL(msvcrt); * in data fields: * same as for arguments and also the following * ?<M>x {<M>}x - * + * */
+#define UNDNAME_NO_COMPLEX_TYPE (0x8000) + struct array { unsigned start; /* first valid reference in array */ diff --git a/include/imagehlp.h b/include/imagehlp.h index 87f16c3ede3..25ab8d115e0 100644 --- a/include/imagehlp.h +++ b/include/imagehlp.h @@ -127,23 +127,23 @@ typedef enum { NumSymTypes } SYM_TYPE;
-#define UNDNAME_COMPLETE 0x0000 -#define UNDNAME_NO_LEADING_UNDERSCORES 0x0001 -#define UNDNAME_NO_MS_KEYWORDS 0x0002 -#define UNDNAME_NO_FUNCTION_RETURNS 0x0004 -#define UNDNAME_NO_ALLOCATION_MODEL 0x0008 -#define UNDNAME_NO_ALLOCATION_LANGUAGE 0x0010 -#define UNDNAME_NO_MS_THISTYPE 0x0020 -#define UNDNAME_NO_CV_THISTYPE 0x0040 -#define UNDNAME_NO_THISTYPE 0x0060 -#define UNDNAME_NO_ACCESS_SPECIFIERS 0x0080 -#define UNDNAME_NO_THROW_SIGNATURES 0x0100 -#define UNDNAME_NO_MEMBER_TYPE 0x0200 -#define UNDNAME_NO_RETURN_UDT_MODEL 0x0400 -#define UNDNAME_32_BIT_DECODE 0x0800 -#define UNDNAME_NAME_ONLY 0x1000 -#define UNDNAME_NO_ARGUMENTS 0x2000 -#define UNDNAME_NO_SPECIAL_SYMS 0x4000 +#define UNDNAME_COMPLETE (0x0000) +#define UNDNAME_NO_LEADING_UNDERSCORES (0x0001) +#define UNDNAME_NO_MS_KEYWORDS (0x0002) +#define UNDNAME_NO_FUNCTION_RETURNS (0x0004) +#define UNDNAME_NO_ALLOCATION_MODEL (0x0008) +#define UNDNAME_NO_ALLOCATION_LANGUAGE (0x0010) +#define UNDNAME_NO_MS_THISTYPE (0x0020) +#define UNDNAME_NO_CV_THISTYPE (0x0040) +#define UNDNAME_NO_THISTYPE (0x0060) +#define UNDNAME_NO_ACCESS_SPECIFIERS (0x0080) +#define UNDNAME_NO_THROW_SIGNATURES (0x0100) +#define UNDNAME_NO_MEMBER_TYPE (0x0200) +#define UNDNAME_NO_RETURN_UDT_MODEL (0x0400) +#define UNDNAME_32_BIT_DECODE (0x0800) +#define UNDNAME_NAME_ONLY (0x1000) +#define UNDNAME_NO_ARGUMENTS (0x2000) +#define UNDNAME_NO_SPECIAL_SYMS (0x4000)
#define CBA_DEFERRED_SYMBOL_LOAD_START 0x00000001 #define CBA_DEFERRED_SYMBOL_LOAD_COMPLETE 0x00000002