summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJosé Bollo <jose.bollo@iot.bzh>2019-04-02 09:48:50 +0200
committerJosé Bollo <jose.bollo@iot.bzh>2019-04-02 09:53:18 +0200
commit8214e88a036ca06a9a2ba2348e99df4de8bb8940 (patch)
treece9488dd34a4d7c21741c66aa43b8f48b8bc94eb
parent84f4aec41817417a3b94d91da1b9b2fba9711e40 (diff)
evmgr: Fix a "maybe uninitialized" issue
The warning maybe-uninitialized is emited only when the optimisation level is greater than 0. For this reason, the error was not discovered development process. The build config is tuned to detect that error and the error is fixed. Change-Id: I14c8ffe6daa3d498268cfadeab20300895b3360e Signed-off-by: José Bollo <jose.bollo@iot.bzh>
-rw-r--r--CMakeLists.txt8
-rw-r--r--src/evmgr.c3
2 files changed, 6 insertions, 5 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index dfbdadf4..f5646309 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -61,12 +61,12 @@ add_compile_options(-Werror=maybe-uninitialized)
add_compile_options(-Werror=implicit-function-declaration)
add_compile_options(-ffunction-sections -fdata-sections)
add_compile_options(-fPIC)
-add_compile_options(-g)
+add_compile_options(-g -O2)
set (CMAKE_CXX_STANDARD 14)
-set(CMAKE_C_FLAGS_PROFILING "-g -O2 -pg -Wp,-U_FORTIFY_SOURCE")
-set(CMAKE_C_FLAGS_DEBUG "-g -ggdb -Wp,-U_FORTIFY_SOURCE")
-set(CMAKE_C_FLAGS_RELEASE "-g -O2")
+set(CMAKE_C_FLAGS_PROFILING "-g -O2 -pg -U_FORTIFY_SOURCE")
+set(CMAKE_C_FLAGS_DEBUG "-g -O2 -ggdb -U_FORTIFY_SOURCE")
+set(CMAKE_C_FLAGS_RELEASE "-g -O3")
set(CMAKE_C_FLAGS_CCOV "-g -O2 --coverage")
###########################################################################
diff --git a/src/evmgr.c b/src/evmgr.c
index 2dc35e42..557a9f3a 100644
--- a/src/evmgr.c
+++ b/src/evmgr.c
@@ -185,13 +185,14 @@ int evmgr_create(struct evmgr **result)
/* creates the eventfd for waking up polls */
evmgr->efd = eventfd(0, EFD_CLOEXEC|EFD_SEMAPHORE);
if (evmgr->efd < 0) {
- ERROR("can't make eventfd for events");
rc = -errno;
+ ERROR("can't make eventfd for events");
goto error1;
}
/* create the systemd event loop */
evmgr->sdev = systemd_get_event_loop();
if (!evmgr->sdev) {
+ rc = -errno;
ERROR("can't make new event loop");
goto error2;
}