Fix some warnings raised by MSVC 2017
Disabled signed/unsigned warnings like for GCC/Clang (warning C4018: '>=': signed/unsigned mismatch). Fixes the following MSVC 2017 warnings: ``` core\image.cpp(999): warning C4804: '>': unsafe use of type 'bool' in operation core\io\compression.cpp(178): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?) editor\doc\doc_dump.cpp(226): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?) scene/resources/material.h(289): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?) scene/resources/material.h(298): warning C4334: '<<': result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?) editor\editor_themes.cpp(379): warning C4805: '==': unsafe mix of type 'int' and type 'bool' in operation ```
This commit is contained in:
parent
95131e6f23
commit
dec20a987b
|
@ -322,13 +322,13 @@ if selected_platform in platform_list:
|
||||||
print("WARNING: warnings=yes is deprecated; assuming warnings=all")
|
print("WARNING: warnings=yes is deprecated; assuming warnings=all")
|
||||||
|
|
||||||
if env.msvc:
|
if env.msvc:
|
||||||
disable_nonessential_warnings = ['/wd4267', '/wd4244', '/wd4305', '/wd4800'] # Truncations, narrowing conversions...
|
# Truncations, narrowing conversions, signed/unsigned comparisons...
|
||||||
|
disable_nonessential_warnings = ['/wd4267', '/wd4244', '/wd4305', '/wd4018', '/wd4800']
|
||||||
if (env["warnings"] == 'extra'):
|
if (env["warnings"] == 'extra'):
|
||||||
env.Append(CCFLAGS=['/Wall']) # Implies /W4
|
env.Append(CCFLAGS=['/Wall']) # Implies /W4
|
||||||
elif (env["warnings"] == 'all' or env["warnings"] == 'yes'):
|
elif (env["warnings"] == 'all' or env["warnings"] == 'yes'):
|
||||||
env.Append(CCFLAGS=['/W3'] + disable_nonessential_warnings)
|
env.Append(CCFLAGS=['/W3'] + disable_nonessential_warnings)
|
||||||
elif (env["warnings"] == 'moderate'):
|
elif (env["warnings"] == 'moderate'):
|
||||||
# C4244 shouldn't be needed here being a level-3 warning, but it is
|
|
||||||
env.Append(CCFLAGS=['/W2'] + disable_nonessential_warnings)
|
env.Append(CCFLAGS=['/W2'] + disable_nonessential_warnings)
|
||||||
else: # 'no'
|
else: # 'no'
|
||||||
env.Append(CCFLAGS=['/w'])
|
env.Append(CCFLAGS=['/w'])
|
||||||
|
|
|
@ -307,6 +307,7 @@ void Image::_get_mipmap_offset_and_size(int p_mipmap, int &r_offset, int &r_widt
|
||||||
r_width = w;
|
r_width = w;
|
||||||
r_height = h;
|
r_height = h;
|
||||||
}
|
}
|
||||||
|
|
||||||
int Image::get_mipmap_offset(int p_mipmap) const {
|
int Image::get_mipmap_offset(int p_mipmap) const {
|
||||||
|
|
||||||
ERR_FAIL_INDEX_V(p_mipmap, get_mipmap_count() + 1, -1);
|
ERR_FAIL_INDEX_V(p_mipmap, get_mipmap_count() + 1, -1);
|
||||||
|
@ -499,8 +500,6 @@ void Image::convert(Format p_new_format) {
|
||||||
|
|
||||||
bool gen_mipmaps = mipmaps;
|
bool gen_mipmaps = mipmaps;
|
||||||
|
|
||||||
//mipmaps=false;
|
|
||||||
|
|
||||||
_copy_internals_from(new_img);
|
_copy_internals_from(new_img);
|
||||||
|
|
||||||
if (gen_mipmaps)
|
if (gen_mipmaps)
|
||||||
|
@ -799,6 +798,7 @@ void Image::resize(int p_width, int p_height, Interpolation p_interpolation) {
|
||||||
if (interpolate_mipmaps) {
|
if (interpolate_mipmaps) {
|
||||||
dst2.create(p_width, p_height, 0, format);
|
dst2.create(p_width, p_height, 0, format);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool had_mipmaps = mipmaps;
|
bool had_mipmaps = mipmaps;
|
||||||
if (interpolate_mipmaps && !had_mipmaps) {
|
if (interpolate_mipmaps && !had_mipmaps) {
|
||||||
generate_mipmaps();
|
generate_mipmaps();
|
||||||
|
@ -951,6 +951,7 @@ void Image::resize(int p_width, int p_height, Interpolation p_interpolation) {
|
||||||
}
|
}
|
||||||
|
|
||||||
void Image::crop_from_point(int p_x, int p_y, int p_width, int p_height) {
|
void Image::crop_from_point(int p_x, int p_y, int p_width, int p_height) {
|
||||||
|
|
||||||
if (!_can_modify(format)) {
|
if (!_can_modify(format)) {
|
||||||
ERR_EXPLAIN("Cannot crop in indexed, compressed or custom image formats.");
|
ERR_EXPLAIN("Cannot crop in indexed, compressed or custom image formats.");
|
||||||
ERR_FAIL();
|
ERR_FAIL();
|
||||||
|
@ -996,7 +997,7 @@ void Image::crop_from_point(int p_x, int p_y, int p_width, int p_height) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (mipmaps > 0)
|
if (has_mipmaps())
|
||||||
dst.generate_mipmaps();
|
dst.generate_mipmaps();
|
||||||
_copy_internals_from(dst);
|
_copy_internals_from(dst);
|
||||||
}
|
}
|
||||||
|
@ -1013,10 +1014,10 @@ void Image::flip_y() {
|
||||||
ERR_FAIL();
|
ERR_FAIL();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool gm = mipmaps;
|
bool used_mipmaps = has_mipmaps();
|
||||||
|
if (used_mipmaps) {
|
||||||
if (gm)
|
|
||||||
clear_mipmaps();
|
clear_mipmaps();
|
||||||
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
PoolVector<uint8_t>::Write w = data.write();
|
PoolVector<uint8_t>::Write w = data.write();
|
||||||
|
@ -1037,8 +1038,9 @@ void Image::flip_y() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gm)
|
if (used_mipmaps) {
|
||||||
generate_mipmaps();
|
generate_mipmaps();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void Image::flip_x() {
|
void Image::flip_x() {
|
||||||
|
@ -1048,9 +1050,10 @@ void Image::flip_x() {
|
||||||
ERR_FAIL();
|
ERR_FAIL();
|
||||||
}
|
}
|
||||||
|
|
||||||
bool gm = mipmaps;
|
bool used_mipmaps = has_mipmaps();
|
||||||
if (gm)
|
if (used_mipmaps) {
|
||||||
clear_mipmaps();
|
clear_mipmaps();
|
||||||
|
}
|
||||||
|
|
||||||
{
|
{
|
||||||
PoolVector<uint8_t>::Write w = data.write();
|
PoolVector<uint8_t>::Write w = data.write();
|
||||||
|
@ -1071,8 +1074,9 @@ void Image::flip_x() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (gm)
|
if (used_mipmaps) {
|
||||||
generate_mipmaps();
|
generate_mipmaps();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
int Image::_get_dst_image_size(int p_width, int p_height, Format p_format, int &r_mipmaps, int p_mipmaps) {
|
int Image::_get_dst_image_size(int p_width, int p_height, Format p_format, int &r_mipmaps, int p_mipmaps) {
|
||||||
|
@ -1167,12 +1171,13 @@ void Image::expand_x2_hq2x() {
|
||||||
|
|
||||||
ERR_FAIL_COND(!_can_modify(format));
|
ERR_FAIL_COND(!_can_modify(format));
|
||||||
|
|
||||||
Format current = format;
|
bool used_mipmaps = has_mipmaps();
|
||||||
bool mm = has_mipmaps();
|
if (used_mipmaps) {
|
||||||
if (mm) {
|
|
||||||
clear_mipmaps();
|
clear_mipmaps();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Format current = format;
|
||||||
|
|
||||||
if (current != FORMAT_RGBA8)
|
if (current != FORMAT_RGBA8)
|
||||||
convert(FORMAT_RGBA8);
|
convert(FORMAT_RGBA8);
|
||||||
|
|
||||||
|
@ -1193,7 +1198,7 @@ void Image::expand_x2_hq2x() {
|
||||||
if (current != FORMAT_RGBA8)
|
if (current != FORMAT_RGBA8)
|
||||||
convert(current);
|
convert(current);
|
||||||
|
|
||||||
if (mipmaps) {
|
if (used_mipmaps) {
|
||||||
generate_mipmaps();
|
generate_mipmaps();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -175,7 +175,7 @@ int Compression::decompress(uint8_t *p_dst, int p_dst_max_size, const uint8_t *p
|
||||||
} break;
|
} break;
|
||||||
case MODE_ZSTD: {
|
case MODE_ZSTD: {
|
||||||
ZSTD_DCtx *dctx = ZSTD_createDCtx();
|
ZSTD_DCtx *dctx = ZSTD_createDCtx();
|
||||||
if (zstd_long_distance_matching) ZSTD_DCtx_setMaxWindowSize(dctx, 1 << zstd_window_log_size);
|
if (zstd_long_distance_matching) ZSTD_DCtx_setMaxWindowSize(dctx, (size_t)1 << zstd_window_log_size);
|
||||||
int ret = ZSTD_decompressDCtx(dctx, p_dst, p_dst_max_size, p_src, p_src_size);
|
int ret = ZSTD_decompressDCtx(dctx, p_dst, p_dst_max_size, p_src, p_src_size);
|
||||||
ZSTD_freeDCtx(dctx);
|
ZSTD_freeDCtx(dctx);
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
@ -223,7 +223,7 @@ void DocDump::dump(const String &p_file) {
|
||||||
hint = "Values: ";
|
hint = "Values: ";
|
||||||
for (int j = 0; j < arginfo.hint_string.get_slice_count(","); j++) {
|
for (int j = 0; j < arginfo.hint_string.get_slice_count(","); j++) {
|
||||||
if (j > 0) hint += ", ";
|
if (j > 0) hint += ", ";
|
||||||
hint += arginfo.hint_string.get_slice(",", j) + "=" + itos(1 << j);
|
hint += arginfo.hint_string.get_slice(",", j) + "=" + itos((uint64_t)1 << j);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case PROPERTY_HINT_FILE: hint = "A file:"; break;
|
case PROPERTY_HINT_FILE: hint = "A file:"; break;
|
||||||
|
|
|
@ -376,7 +376,7 @@ Ref<Theme> create_editor_theme(const Ref<Theme> p_theme) {
|
||||||
//Register icons + font
|
//Register icons + font
|
||||||
|
|
||||||
// the resolution and the icon color (dark_theme bool) has not changed, so we do not regenerate the icons
|
// the resolution and the icon color (dark_theme bool) has not changed, so we do not regenerate the icons
|
||||||
if (p_theme != NULL && fabs(p_theme->get_constant("scale", "Editor") - EDSCALE) < 0.00001 && p_theme->get_constant("dark_theme", "Editor") == dark_theme) {
|
if (p_theme != NULL && fabs(p_theme->get_constant("scale", "Editor") - EDSCALE) < 0.00001 && (bool)p_theme->get_constant("dark_theme", "Editor") == dark_theme) {
|
||||||
// register already generated icons
|
// register already generated icons
|
||||||
for (int i = 0; i < editor_icons_count; i++) {
|
for (int i = 0; i < editor_icons_count; i++) {
|
||||||
theme->set_icon(editor_icons_names[i], "EditorIcons", p_theme->get_icon(editor_icons_names[i], "EditorIcons"));
|
theme->set_icon(editor_icons_names[i], "EditorIcons", p_theme->get_icon(editor_icons_names[i], "EditorIcons"));
|
||||||
|
|
|
@ -286,7 +286,7 @@ private:
|
||||||
mk.key = 0;
|
mk.key = 0;
|
||||||
for (int i = 0; i < FEATURE_MAX; i++) {
|
for (int i = 0; i < FEATURE_MAX; i++) {
|
||||||
if (features[i]) {
|
if (features[i]) {
|
||||||
mk.feature_mask |= (1 << i);
|
mk.feature_mask |= ((uint64_t)1 << i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mk.detail_uv = detail_uv;
|
mk.detail_uv = detail_uv;
|
||||||
|
@ -295,7 +295,7 @@ private:
|
||||||
mk.cull_mode = cull_mode;
|
mk.cull_mode = cull_mode;
|
||||||
for (int i = 0; i < FLAG_MAX; i++) {
|
for (int i = 0; i < FLAG_MAX; i++) {
|
||||||
if (flags[i]) {
|
if (flags[i]) {
|
||||||
mk.flags |= (1 << i);
|
mk.flags |= ((uint64_t)1 << i);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
mk.detail_blend_mode = detail_blend_mode;
|
mk.detail_blend_mode = detail_blend_mode;
|
||||||
|
|
Loading…
Reference in New Issue