Comments (2)
Those tests are 20 years old. Since they are stable and don't seem to cause problems on any compiler (despite triggering UB), I'd say we keep them. Disabling them for UBSAN seems fine to me, but I don't feel that any more action is needed, especially given that there is no real development for Boost.Operators now that we have the spaceship operator.
from utility.
This doesn't cause problems because we don't run the tests on hardware that e.g. triggers a hardware exception on overflow, and we don't use the results of the operators other than to test they are the same for Wrapped
and the underlying type (i.e. that garbage equals garbage).
If there isn't a point to use random input, and run the tests a 1000 times to boot, I would rather replace these tests with a single set of tests with predefined data. Or remove the tests completely, if this is covered elsewhere. Testing UB is just wrong, anyway.
from utility.
Related Issues (20)
- boost::phoenix::bind issue in c++17. HOT 4
- [MSVC][std:c++latest] Boost\libs\utility run tests failed due to error C2666: 'comparible_UDT::operator ==': overloaded functions have similar conversions HOT 1
- Use core/lightwieght-test.
- small library for std::ios HOT 1
- broken link to String Ref in docs HOT 1
- broken doc link HOT 1
- String Ref documentation is missed since 1.77.0 HOT 1
- boost::equality_comparable2 operator== can compile into infinite loop with clang10 and -std=c++2a HOT 37
- compare_pointees.hpp should permit a predicate HOT 2
- string_ref::remove_prefix() doesn't conform with reference HOT 6
- boost::utility::string_view should name a type HOT 8
- result_of cannot handle member function pointer to __cdecl function
- boost::string_view::max_size() erroneously returns size()
- remove_prefix and remove_suffix overly permissive HOT 7
- add contains member function to boost::string_view
- Critical: erronous noexcept specifications on boost::string_view::compare
- add c++20/23 constructors to basic_string_view HOT 3
- string_view::substr() doesn't default pos=0
- error C2676: Binary '+': 'T' does not define this operator or a conversion to an acceptable type for the predefined operator HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from utility.