Merge pull request #3917 from Nodrev/fix-gcc4.9-compilation
Fix gcc4.9 compilationkimkulling-tech_debt_template
commit
15bdc09863
|
@ -58,7 +58,9 @@ OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
#pragma clang diagnostic ignored "-Wsign-compare"
|
#pragma clang diagnostic ignored "-Wsign-compare"
|
||||||
#elif defined(__GNUC__)
|
#elif defined(__GNUC__)
|
||||||
#pragma GCC diagnostic push
|
#pragma GCC diagnostic push
|
||||||
|
#if (__GNUC__ > 4)
|
||||||
#pragma GCC diagnostic ignored "-Wbool-compare"
|
#pragma GCC diagnostic ignored "-Wbool-compare"
|
||||||
|
#endif
|
||||||
#pragma GCC diagnostic ignored "-Wsign-compare"
|
#pragma GCC diagnostic ignored "-Wsign-compare"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -1137,6 +1137,9 @@ ELSE()
|
||||||
TARGET_COMPILE_OPTIONS(assimp PRIVATE -Werror)
|
TARGET_COMPILE_OPTIONS(assimp PRIVATE -Werror)
|
||||||
ENDIF()
|
ENDIF()
|
||||||
|
|
||||||
|
# adds C_FLAGS required to compile zip.c on old GCC 4.x compiler
|
||||||
|
TARGET_COMPILE_FEATURES(assimp PUBLIC c_std_99)
|
||||||
|
|
||||||
TARGET_INCLUDE_DIRECTORIES ( assimp PUBLIC
|
TARGET_INCLUDE_DIRECTORIES ( assimp PUBLIC
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/../include>
|
||||||
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/../include>
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/../include>
|
||||||
|
|
|
@ -88,9 +88,17 @@ public:
|
||||||
underlying << sin;
|
underlying << sin;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Same problem as the copy constructor below, but with root cause is that stream move
|
||||||
|
// is not permitted on older GCC versions. Small performance impact on those platforms.
|
||||||
|
#if defined(__GNUC__) && (__GNUC__ == 4 && __GNUC_MINOR__ <= 9)
|
||||||
|
basic_formatter(basic_formatter&& other) {
|
||||||
|
underlying << (string)other;
|
||||||
|
}
|
||||||
|
#else
|
||||||
basic_formatter(basic_formatter&& other)
|
basic_formatter(basic_formatter&& other)
|
||||||
: underlying(std::move(other.underlying)) {
|
: underlying(std::move(other.underlying)) {
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
// The problem described here:
|
// The problem described here:
|
||||||
// https://sourceforge.net/tracker/?func=detail&atid=1067632&aid=3358562&group_id=226462
|
// https://sourceforge.net/tracker/?func=detail&atid=1067632&aid=3358562&group_id=226462
|
||||||
|
|
Loading…
Reference in New Issue