LoadPinIndexMap uses PinIdLess as its comparator, which calls network_->id(pin) and dereferences the Pin pointer. Three tests created fake Pin* via reinterpret_cast<const Pin*>(&int_var) and inserted them into LoadPinIndexMap, causing undefined behavior. With GCC 15.2.0's hardened std::vector::operator[] bounds checking, this UB manifests as an assertion failure: vector::operator[]: Assertion '__n < this->size()' failed Fix by using empty LoadPinIndexMap for gateDelay/gateDelays/ inputPortDelay calls (the comparator is never invoked on an empty map) and testing wire delay/load slew accessors via ArcDcalcResult::setLoadCount() directly. |
||
|---|---|---|
| .. | ||
| CMakeLists.txt | ||
| TestDcalc.cc | ||
| TestFindRoot.cc | ||