- Timestamp:
- 11/26/20 01:10:49 (4 years ago)
- Location:
- cpp
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
cpp/common/nonstd_math.cpp
r1001 r1026 26 26 ss << x; 27 27 str = ss.str(); 28 char *s = str.data(); //now we will be operating directly on the internal std::string buffer 28 char *s = 29 #ifdef __BORLANDC__ //embarcadero 10.3u3 compiler does not support char* str.data() even in C++17 mode? 30 (char*) 31 #endif 32 str.data(); //now we will be operating directly on the internal std::string buffer 29 33 for (int i = str.length() - 1, end = str.length(); i >= 0; i--) //remove trailing zeros, and maybe also '.' 30 34 { -
cpp/frams/model/geometry/geometryutils.cpp
r810 r1026 340 340 y = b * sqrt(sqrt_arg); 341 341 else 342 #ifdef __BORLANDC__ //compiler bug: embarcadero 10.3u3 raises "invalid fp operation exception" even when the execution does not enter the "signaling_NaN()" branch of "if" (i.e. when sqrt_arg >= 0) so we avoid using signaling_NaN(). 343 y = std::numeric_limits<double>::max(); 344 #else 342 345 y = std::numeric_limits<double>::signaling_NaN(); 343 //This function is called from MeshBuilder::EllipsoidSurface::findNextAreaEdgeAndPhase(). 346 #endif 347 //This function is called from MeshBuilder::EllipsoidSurface::findNextAreaEdgeAndPhase(). 344 348 //y=NaN set above co-occurs with the value of x that doesn't meet the condition tested in findNextAreaEdgeAndPhase(). 345 349 //If the condition is true (i.e., x exceeds the allowed range), entirely new values of x and y are set in the next step anyway.
Note: See TracChangeset
for help on using the changeset viewer.