Specifically, the test std/input.output/string.streams/stringstream/stringstream.members/gcount.pass.cpp
allocates a std::string with INT_MAX-1 elements, and then writes this to
a std::stringstream. On Linux, running this test consumes around 5.0 GB
of memory; on Windows, it ends up using up to 6.8 GB of memory.
This limits whether such tests can run on e.g. GitHub Actions runners,
where the free runners are limited to 8 GB of memory.
This is somewhat similar to, but still notably different, from the
existing test parameter long_tests.
(cherry picked from commit
122064a6303eb9c06e0af231f5a4ce145d9a2e67)
//===----------------------------------------------------------------------===//
// UNSUPPORTED: 32-bit-pointer
+// REQUIRES: large_tests
// Test that tellp() does not break the stringstream after INT_MAX, due to use
// of pbump() that accept int.
actions=lambda enabled: [] if not enabled else [AddFeature("long_tests")],
),
Parameter(
+ name="large_tests",
+ choices=[True, False],
+ type=bool,
+ default=True,
+ help="Whether to enable tests that use a lot of memory. This can be useful when running on a device with limited amounts of memory.",
+ actions=lambda enabled: [] if not enabled else [AddFeature("large_tests")],
+ ),
+ Parameter(
name="enable_assertions",
choices=[True, False],
type=bool,