Bug #87956 | row0sel.cc:5178:32 error: ISO C++ forbids comparison between pointer and intege | ||
---|---|---|---|
Submitted: | 3 Oct 2017 16:12 | Modified: | 5 Oct 2017 13:15 |
Reporter: | Melanie Blower | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Compiling | Severity: | S3 (Non-critical) |
Version: | 5.7.19 | OS: | Red Hat |
Assigned to: | CPU Architecture: | Any |
[3 Oct 2017 16:12]
Melanie Blower
[4 Oct 2017 7:45]
MySQL Verification Team
Hello Melanie Blower, Thank you for the report and feedback! Thanks, Umesh
[4 Oct 2017 10:26]
Tor Didriksen
You get this warning because gcc7 defaults to -std=C++14 which is *not* supported for Mysql5.7 cmake/build_configurations/compiler_options.cmake contains: # GCC 6 has C++14 as default, set it explicitly to the old default. EXECUTE_PROCESS(COMMAND ${CMAKE_CXX_COMPILER} -dumpversion OUTPUT_VARIABLE GXX_VERSION) IF(GXX_VERSION VERSION_EQUAL 6.0 OR GXX_VERSION VERSION_GREATER 6.0) SET(COMMON_CXX_FLAGS "${COMMON_CXX_FLAGS} -std=gnu++03") ENDIF() Use this, and your warning disappears. In general you can not expect older/GA versions of MySQL to have a clean build with new compilers. For the current development versions we *do* fix build problems (currently working with warnings from gcc8) We occasionally backport such fixes to GA versions.
[5 Oct 2017 13:15]
Paul DuBois
Posted by developer: Fixed in 5.7.21, 8.0.4, 9.0.0. Code cleanup. No changelog entry needed.