Merge pull request #4091 from dcarp/issue15807

Fix issue 15807
This commit is contained in:
Steven Schveighoffer 2016-03-18 12:07:01 -04:00
commit f3e6c436b2

View file

@ -1928,11 +1928,11 @@ if (is(Unqual!T == bool))
// Fits within the current array // Fits within the current array
if (stuff) if (stuff)
{ {
data[$ - 1] |= (1u << rem); data[$ - 1] |= (cast(size_t)1 << rem);
} }
else else
{ {
data[$ - 1] &= ~(1u << rem); data[$ - 1] &= ~(cast(size_t)1 << rem);
} }
} }
else else
@ -1959,6 +1959,15 @@ if (is(Unqual!T == bool))
/// ditto /// ditto
alias stableInsertBack = insertBack; alias stableInsertBack = insertBack;
unittest
{
Array!bool a;
for (int i = 0; i < 100; ++i)
a.insertBack(true);
foreach (e; a)
assert(e);
}
/** /**
Removes the value at the front or back of the container. The Removes the value at the front or back of the container. The
stable version behaves the same, but guarantees that ranges stable version behaves the same, but guarantees that ranges