diff options
author | Colin Snover | 2017-03-30 11:27:04 -0500 |
---|---|---|
committer | Colin Snover | 2017-03-30 14:22:56 -0500 |
commit | 993d83fe4b65cc30d43ceb4de38c036889a6f4ae (patch) | |
tree | 53b3d5611e74b19bb7f0abe757e46fdcf9817882 /test | |
parent | 09da42129374f215301d6295cd6b092d1b3e6fee (diff) | |
download | scummvm-rg350-993d83fe4b65cc30d43ceb4de38c036889a6f4ae.tar.gz scummvm-rg350-993d83fe4b65cc30d43ceb4de38c036889a6f4ae.tar.bz2 scummvm-rg350-993d83fe4b65cc30d43ceb4de38c036889a6f4ae.zip |
COMMON: Reduce maximum Span size to 4GiB
Until C++11 (which introduces the z and t length modifiers), there
is no consistent way to print size_t and ptrdiff_t types using
printf formatting across 32-bit, LLP64, and LP64 architectures
without using a cumbersome macro to select the appropriate length
modifier for the target architecture. Since ScummVM engines
currently need to support 32-bit targets, there is no reason at
the moment to support any larger memory sizes in Span anyway.
Span error output is also updated in this commit to reflect that
index values are unsigned.
Diffstat (limited to 'test')
-rw-r--r-- | test/common/span.h | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/test/common/span.h b/test/common/span.h index 55ef2c6bd2..aa3ee9d22f 100644 --- a/test/common/span.h +++ b/test/common/span.h @@ -640,7 +640,7 @@ public: TS_ASSERT(span.checkInvalidBounds(2, -4)); // negative overflow (-2) TS_ASSERT(span.checkInvalidBounds(0, 10)); // delta positive overflow - const ptrdiff_t big = 1L << (8 * sizeof(ptrdiff_t) - 1); + const Common::Span<byte>::difference_type big = 1L << (8 * sizeof(Common::Span<byte>::difference_type) - 1); TS_ASSERT(span.checkInvalidBounds(big, 0)); TS_ASSERT(span.checkInvalidBounds(0, big)); TS_ASSERT(span.checkInvalidBounds(big, big)); @@ -662,8 +662,8 @@ public: expected = Common::String::format("Access violation writing %s: 23 + 45 > 1", source.c_str()); TS_ASSERT_EQUALS(actual, expected); - actual = span.getValidationMessage(-34, -56, Common::kValidateSeek); - expected = Common::String::format("Access violation seeking %s: -34 + -56 > 1", source.c_str()); + actual = span.getValidationMessage(0, -56, Common::kValidateSeek); + expected = Common::String::format("Access violation seeking %s: 0 + -56 > 1", source.c_str()); TS_ASSERT_EQUALS(actual, expected); } @@ -716,15 +716,15 @@ public: { Common::NamedSpan<byte> subspan = span.subspan(2, Common::kSpanMaxSize, "new.data"); - expected = "Access violation reading new.data: -34 + -56 > 4 (abs: -32 + -56 > 6)"; - actual = subspan.getValidationMessage(-34, -56, Common::kValidateRead); + expected = "Access violation reading new.data: 0 + -56 > 4 (abs: 2 + -56 > 6)"; + actual = subspan.getValidationMessage(0, -56, Common::kValidateRead); TS_ASSERT_EQUALS(actual, expected); } { Common::NamedSpan<byte> subspan = span.subspan(2, Common::kSpanMaxSize, "new.data", 0); - expected = "Access violation reading new.data: -34 + -56 > 4 (abs: -34 + -56 > 4)"; - actual = subspan.getValidationMessage(-34, -56, Common::kValidateRead); + expected = "Access violation reading new.data: 0 + -56 > 4 (abs: 0 + -56 > 4)"; + actual = subspan.getValidationMessage(0, -56, Common::kValidateRead); TS_ASSERT_EQUALS(actual, expected); } @@ -754,23 +754,23 @@ public: { Common::NamedSpan<const byte> subspan = constSpan.subspan(2, Common::kSpanMaxSize, "new.data"); - expected = "Access violation reading new.data: -34 + -56 > 4 (abs: -32 + -56 > 6)"; - actual = subspan.getValidationMessage(-34, -56, Common::kValidateRead); + expected = "Access violation reading new.data: 0 + -56 > 4 (abs: 2 + -56 > 6)"; + actual = subspan.getValidationMessage(0, -56, Common::kValidateRead); TS_ASSERT_EQUALS(actual, expected); } { Common::NamedSpan<const byte> subspan = constSpan.subspan(2, Common::kSpanMaxSize, "new.data", 0); - expected = "Access violation reading new.data: -34 + -56 > 4 (abs: -34 + -56 > 4)"; - actual = subspan.getValidationMessage(-34, -56, Common::kValidateRead); + expected = "Access violation reading new.data: 0 + -56 > 4 (abs: 0 + -56 > 4)"; + actual = subspan.getValidationMessage(0, -56, Common::kValidateRead); TS_ASSERT_EQUALS(actual, expected); } { Common::NamedSpan<const byte> subspan = constSpan.subspan(2, Common::kSpanMaxSize, "new.data", 0); subspan.sourceByteOffset() = 2; - expected = "Access violation reading new.data: -34 + -56 > 4 (abs: -32 + -56 > 6)"; - actual = subspan.getValidationMessage(-34, -56, Common::kValidateRead); + expected = "Access violation reading new.data: 0 + -56 > 4 (abs: 2 + -56 > 6)"; + actual = subspan.getValidationMessage(0, -56, Common::kValidateRead); TS_ASSERT_EQUALS(actual, expected); } |