Fix windows 64-bits build.
The change in `tools/doc/doc_data.cpp` is needed because the MSVC
compiler does not support variable length arrays.
Fix #4113
(cherry picked from commit 9424c6c58f
)
This commit is contained in:
parent
3449c81bdb
commit
4f57e532b8
|
@ -153,8 +153,7 @@ typedef unsigned short wchar_t;
|
||||||
#endif
|
#endif
|
||||||
#if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_)
|
#if !defined(_PTRDIFF_T_DEFINED) && !defined(_PTRDIFF_T_)
|
||||||
# ifdef _WIN64
|
# ifdef _WIN64
|
||||||
//typedef __int64 ptrdiff_t;
|
typedef __int64 ptrdiff_t;
|
||||||
typedef long int ptrdiff_t;
|
|
||||||
# else
|
# else
|
||||||
typedef _W64 int ptrdiff_t;
|
typedef _W64 int ptrdiff_t;
|
||||||
# endif
|
# endif
|
||||||
|
|
|
@ -289,6 +289,8 @@ def configure(env):
|
||||||
print "Compiled program architecture will be a 32 bit executable. (forcing bits=32)."
|
print "Compiled program architecture will be a 32 bit executable. (forcing bits=32)."
|
||||||
else:
|
else:
|
||||||
print "Failed to detect MSVC compiler architecture version... Defaulting to 32bit executable settings (forcing bits=32). Compilation attempt will continue, but SCons can not detect for what architecture this build is compiled for. You should check your settings/compilation setup."
|
print "Failed to detect MSVC compiler architecture version... Defaulting to 32bit executable settings (forcing bits=32). Compilation attempt will continue, but SCons can not detect for what architecture this build is compiled for. You should check your settings/compilation setup."
|
||||||
|
if env["bits"]=="64":
|
||||||
|
env.Append(CCFLAGS=['/D_WIN64'])
|
||||||
else:
|
else:
|
||||||
|
|
||||||
# Workaround for MinGW. See:
|
# Workaround for MinGW. See:
|
||||||
|
|
|
@ -64,7 +64,7 @@ void DocData::merge_from(const DocData& p_data) {
|
||||||
// since polymorphic functions are allowed we need to check the type of
|
// since polymorphic functions are allowed we need to check the type of
|
||||||
// the arguments so we make sure they are different.
|
// the arguments so we make sure they are different.
|
||||||
int arg_count = cf.methods[j].arguments.size();
|
int arg_count = cf.methods[j].arguments.size();
|
||||||
bool arg_used[arg_count];
|
bool* arg_used = new bool[arg_count];
|
||||||
for (int l = 0; l < arg_count; ++l) arg_used[l] = false;
|
for (int l = 0; l < arg_count; ++l) arg_used[l] = false;
|
||||||
// also there is no guarantee that argument ordering will match, so we
|
// also there is no guarantee that argument ordering will match, so we
|
||||||
// have to check one by one so we make sure we have an exact match
|
// have to check one by one so we make sure we have an exact match
|
||||||
|
|
Loading…
Reference in New Issue