https://bugs.kde.org/show_bug.cgi?id=517776
Bug ID: 517776
Summary: GLIBCXX assertion in KSeExpr 6 test suite
Classification: Frameworks and Libraries
Product: SeExpr
Version First unspecified
Reported In:
Platform: Other
OS: Linux
Status: REPORTED
Severity: normal
Priority: NOR
Component: General
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: ---
Created attachment 190776
--> https://bugs.kde.org/attachment.cgi?id=190776&action=edit
backtrace
***
If you're not sure this is actually a bug, instead post about it at
https://discuss.kde.org
If you're reporting a crash, attach a backtrace with debug symbols; see
https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
Please remove this comment after reading and before submitting - thanks!
***
SUMMARY
When running the KSeExpr 6 test suite with GLIBCXX assertion enabled it fails
STEPS TO REPRODUCE
1. Add -D_GLIBCXX_ASSERTIONS=1 to CXXFLAGS
2. Build KSeExpr 6
3. Run test suite
OBSERVED RESULT
/usr/include/c++/15.2.0/bits/stl_vector.h:1263: std::vector<_Tp,
_Alloc>::reference std::vector<_Tp, _Alloc>::operator[](size_type) [with _Tp =
double; _Alloc = std::allocator<double>; reference = double&; size_type = long
unsigned int]: Assertion '__n < this->size()' failed.
EXPECTED RESULT
test suite to pass
SOFTWARE/OS VERSIONS
Windows:
macOS:
(available in the Info Center app, or by running `kinfo` in a terminal window)
Linux/KDE Plasma: Alpine edge
KDE Plasma Version: -
KDE Frameworks Version: 6.23.0
Qt Version: 6.10.2
ADDITIONAL INFORMATION
The issue seems to be that the double data of the Interpreter can be empty but
endOp() tries to get the address of the first element anyways which GLIBCXX
considers a reason to abort. A possible fix is to conditionally request the
first element of double data: `double* fp = d.size() ? &d[0] : nullptr;`.
--
You are receiving this mail because:
You are watching all bug changes.