AIX: Fix gcc compilation on aix - Wrange-loop-analysis is not supported by gcc - On the switch case an error is being generated with gcc 8.3 indicating: ``` error: this statement may fall through ``` Change-Id: I31862810a66034ba46c8b157aa181da528688089 Reviewed-on: https://gn-review.googlesource.com/c/gn/+/13840 Commit-Queue: Sylvain Defresne <sdefresne@chromium.org> Reviewed-by: Takuto Ikuta <tikuta@google.com> Reviewed-by: Sylvain Defresne <sdefresne@chromium.org>
diff --git a/build/gen.py b/build/gen.py index 9fd68e9..2d89af4 100755 --- a/build/gen.py +++ b/build/gen.py
@@ -439,11 +439,14 @@ '-Wall', '-Wextra', '-Wno-unused-parameter', - '-Wrange-loop-analysis', '-Wundef', '-std=c++17' ]) + # flag not supported by gcc/g++. + if not (platform.is_aix() or platform.is_msys() or platform.is_mingw()): + cflags.extend(['-Wrange-loop-analysis']); + if platform.is_linux() or platform.is_mingw() or platform.is_msys(): ldflags.append('-Wl,--as-needed')
diff --git a/src/gn/exec_process.cc b/src/gn/exec_process.cc index 69d631e..e1e123f 100644 --- a/src/gn/exec_process.cc +++ b/src/gn/exec_process.cc
@@ -253,6 +253,8 @@ argv_cstr[argv.size()] = nullptr; execvp(argv_cstr[0], argv_cstr.get()); _exit(127); + // Avoid `fall through` warning on some gcc versions. + break; } default: // parent {