3
0
Fork 0
mirror of https://github.com/Z3Prover/z3 synced 2026-04-16 09:13:24 +00:00
z3/src/test/vector.cpp
Copilot 317dd92105 Standardize for-loop increments to prefix form (++i) (#8199)
* Initial plan

* Convert postfix to prefix increment in for loops

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Fix member variable increment conversion bug

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

* Update API generator to produce prefix increments

Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: NikolajBjorner <3085284+NikolajBjorner@users.noreply.github.com>
2026-02-18 20:57:29 -08:00

62 lines
1.3 KiB
C++

/*++
Copyright (c) 2006 Microsoft Corporation
Module Name:
tst_vector.cpp
Abstract:
Test my vector template.
Author:
Leonardo de Moura (leonardo) 2006-09-11.
Revision History:
--*/
#include "util/vector.h"
#include <iostream>
static void tst1() {
svector<int> v1;
ENSURE(v1.empty());
for (unsigned i = 0; i < 1000; ++i) {
v1.push_back(i + 3);
ENSURE(static_cast<unsigned>(v1[i]) == i + 3);
ENSURE(v1.capacity() >= v1.size());
ENSURE(!v1.empty());
}
for (unsigned i = 0; i < 1000; ++i) {
ENSURE(static_cast<unsigned>(v1[i]) == i + 3);
}
svector<int>::iterator it = v1.begin();
svector<int>::iterator end = v1.end();
for (int i = 0; it != end; ++it, ++i) {
ENSURE(*it == i + 3);
}
for (unsigned i = 0; i < 1000; ++i) {
ENSURE(static_cast<unsigned>(v1.back()) == 1000 - i - 1 + 3);
ENSURE(v1.size() == 1000 - i);
v1.pop_back();
}
ENSURE(v1.empty());
ENSURE(v1.empty());
unsigned i = 1000000000;
while (true) {
std::cout << "resize " << i << "\n";
try {
v1.resize(i);
}
catch (z3_exception& e) {
std::cout << e.what() << "\n";
break;
}
i *= 2;
}
}
void tst_vector() {
tst1();
}