Bug #86493 main.select* tests are failing with clang 4.0
Submitted: 29 May 2017 9:53 Modified: 16 Jun 2017 13:32
Reporter: Erlend Dahl Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:8.0.2 OS:Any
Assigned to: CPU Architecture:Any

[29 May 2017 9:53] Erlend Dahl
Description:
CURRENT_TEST: main.select_all
--- /export/home/tmp/edahl/mysql-trunk/mysql-test/r/select_all.result	2017-05-02 11:27:21.742689868 +0300
+++ /export/home/tmp/edahl/build-trunk-nodebug-clang40/mysql-test/var/log/select_all.reject	2017-05-29 12:20:24.877290032 +0300
@@ -2205,7 +2205,6 @@
 wss_type
 select wss_type from t1 where wss_type ='102935229216544093';
 wss_type
-102935229216544093
 select wss_type from t1 where wss_type =102935229216544093;
 wss_type
 102935229216544093

How to repeat:
Use the Clang 4.0 compiler. It does not fail with 3.9. Non-debug build:

cmake ../mysql-trunk -DBUILD_CONFIG=mysql_release -DWITH_BOOST=/home/edahl/boost
[2 Jun 2017 13:50] Tor Didriksen
Posted by developer:
 
Clang bug, Steinar has filed:
https://bugs.llvm.org/show_bug.cgi?id=33278

Our workaround:
ADD_COMPILE_FLAGS(dtoa.cc COMPILE_FLAGS "-fno-strict-aliasing")

Wrappen in something like if(clang and clang_version >= 4.0)
[16 Jun 2017 13:32] Paul DuBois
Posted by developer:
 
Fixed in 8.0.3.

Code cleanup. No changelog entry needed.