Bug #57933 | add -Wdeclaration-after-statement to gcc builds | ||
---|---|---|---|
Submitted: | 2 Nov 2010 17:09 | Modified: | 20 Nov 2010 18:12 |
Reporter: | Guilhem Bichot | Email Updates: | |
Status: | Closed | Impact on me: | |
Category: | MySQL Server: Compiling | Severity: | S4 (Feature request) |
Version: | 5.1, 5.5 | OS: | Any |
Assigned to: | CPU Architecture: | Any |
[2 Nov 2010 17:09]
Guilhem Bichot
[3 Nov 2010 14:36]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/122716 3552 Guilhem Bichot 2010-11-03 BUG#57933 "add -Wdeclaration-after-statement to gcc builds"; first part, for autotools build. @ config/ac-macros/maintainer.m4 Add the flag. With it, and as we use -Werror, we nicely get "error: ISO C90 forbids mixed declarations and code" if a declaration follows a statement in C code. Note that g++ refuses this flag.
[3 Nov 2010 16:23]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/122736 3122 Guilhem Bichot 2010-11-03 BUG#57933 "add -Wdeclaration-after-statement to gcc builds" implementation for autotools and cmake. @ CMakeLists.txt Detect compiler flag -Wdeclaration-after-statement and use it if exists. The detection cannot happen before "INCLUDE(configure.cmake)" because configure.cmake is what does "INCLUDE (CheckCSourceCompiles)" which is needed for CHECK_C_COMPILER_FLAG. That's a first reason to move the first maintainer-related block down. A second reason is that I could not understand why we set some variables (MY_MAINTAINER*) early in a first block; I believe they don't influence anything until we use them to set CMAKE_C_FLAGS in the second block. So I move the first block into the second. I don't know whether adding -Wno-error to CMAKE_REQUIRED_FLAGS is still needed, for me it compiles even without it, but I left it. @ config/ac-macros/maintainer.m4 Add flag to autotools build.
[3 Nov 2010 16:26]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/122737 3122 Guilhem Bichot 2010-11-03 BUG#57933 "add -Wdeclaration-after-statement to gcc builds" implementation for autotools and cmake. @ CMakeLists.txt Detect compiler flag -Wdeclaration-after-statement and use it if exists. The detection cannot happen before "INCLUDE(configure.cmake)" because configure.cmake is what does "INCLUDE (CheckCSourceCompiles)" which is needed for CHECK_C_COMPILER_FLAG. That's a first reason to move the first maintainer-related block down. A second reason is that I could not understand why we set some variables (MY_MAINTAINER*) early in a first block; I believe they don't influence anything until we use them to set CMAKE_C_FLAGS in the second block. So I move the first block into the second. I don't know whether adding -Wno-error to CMAKE_REQUIRED_FLAGS is still needed, for me it compiles even without it, but I left it. @ config/ac-macros/maintainer.m4 Add flag to autotools build.
[4 Nov 2010 18:24]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/122869 3122 Guilhem Bichot 2010-11-04 BUG#57933 "add -Wdeclaration-after-statement to gcc builds" implementation for autotools and cmake. @ CMakeLists.txt Detect compiler flag -Wdeclaration-after-statement and use it if exists. The detection cannot happen before "INCLUDE(configure.cmake)" because configure.cmake is what does "INCLUDE (CheckCSourceCompiles)" which is needed for CHECK_C_COMPILER_FLAG. That's a first reason to move the first maintainer-related block down. A second reason is that I could not understand why we set some variables (MY_MAINTAINER*) early in a first block; I believe they don't influence anything until we use them to set CMAKE_C_FLAGS in the second block. So I move the first block into the second. I don't know whether adding -Wno-error to CMAKE_REQUIRED_FLAGS is still needed, for me it compiles even without it, but I left it. @ config/ac-macros/maintainer.m4 Add flag to autotools build.
[5 Nov 2010 9:25]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/122911 3122 Guilhem Bichot 2010-11-05 BUG#57933 "add -Wdeclaration-after-statement to gcc builds" implementation for autotools and cmake. @ CMakeLists.txt Detect compiler flag -Wdeclaration-after-statement and use it if exists. @ config/ac-macros/maintainer.m4 Add flag to autotools build.
[5 Nov 2010 13:18]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/122949 3553 Guilhem Bichot 2010-11-05 BUG#57933 "add -Wdeclaration-after-statement to gcc builds"; first part, for autotools build. @ config/ac-macros/maintainer.m4 Add the flag. With it, and as we use -Werror, we nicely get "error: ISO C90 forbids mixed declarations and code" if a declaration follows a statement in C code. Note that g++ refuses this flag.
[5 Nov 2010 13:34]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/122953 3124 Guilhem Bichot 2010-11-05 [merge] Merge of the fix for BUG#57933 "add -Wdeclaration-after-statement to gcc builds" from 5.1; extended here to Cmake builds.
[5 Nov 2010 14:12]
Guilhem Bichot
queued to 5.1-bugteam, 5.5-bugteam, trunk-bugfixing. It's about compiler flags used by us, no changelog needed.
[13 Nov 2010 16:05]
Bugs System
Pushed into mysql-trunk 5.6.99-m5 (revid:alexander.nozdrin@oracle.com-20101113155825-czmva9kg4n31anmu) (version source revid:alexander.nozdrin@oracle.com-20101113152450-2zzcm50e7i4j35v7) (merge vers: 5.6.1-m4) (pib:21)
[13 Nov 2010 16:30]
Bugs System
Pushed into mysql-next-mr (revid:alexander.nozdrin@oracle.com-20101113160336-atmtmfb3mzm4pz4i) (version source revid:alexander.nozdrin@oracle.com-20101113152540-gxro4g0v29l27f5x) (pib:21)
[20 Nov 2010 18:12]
Paul DuBois
No changelog entry needed.
[15 Dec 2010 5:53]
Bugs System
Pushed into mysql-5.1 5.1.55 (revid:sunanda.menon@oracle.com-20101215054055-vgwki317xg1wphhh) (version source revid:sunanda.menon@oracle.com-20101215054055-vgwki317xg1wphhh) (merge vers: 5.1.55) (pib:23)
[16 Dec 2010 22:26]
Bugs System
Pushed into mysql-5.5 5.5.9 (revid:jonathan.perkin@oracle.com-20101216101358-fyzr1epq95a3yett) (version source revid:jonathan.perkin@oracle.com-20101216101358-fyzr1epq95a3yett) (merge vers: 5.5.9) (pib:24)