From 9484f1b2242f1c237c6db63f730a4c9e19240f12 Mon Sep 17 00:00:00 2001 From: Gabor Kiss-Vamosi Date: Fri, 19 Feb 2021 18:19:47 +0100 Subject: [PATCH] fix warnings --- lvgl.h | 1 + lvgl.mk | 1 + src/extra/widgets/spinner/lv_spinner.c | 18 +++++++++++++++--- src/lv_core/lv_group.c | 14 +------------- src/lv_core/lv_group.h | 12 +----------- src/lv_draw/lv_img_decoder.h | 2 +- src/lv_font/lv_font.h | 2 +- src/lv_hal/lv_hal_disp.h | 2 +- src/lv_hal/lv_hal_indev.h | 2 +- src/lv_misc/lv_anim.h | 2 +- src/lv_misc/lv_fs.h | 2 +- tests/Makefile | 2 +- tests/build.py | 14 +++++++++++--- tests/lv_test_core/lv_test_font_loader.c | 7 +++++-- tests/lv_test_widgets/lv_test_label.c | 2 ++ 15 files changed, 44 insertions(+), 39 deletions(-) diff --git a/lvgl.h b/lvgl.h index 82ccd2876..65aa8925a 100644 --- a/lvgl.h +++ b/lvgl.h @@ -71,6 +71,7 @@ extern "C" { #include "src/extra/layouts/lv_layouts.h" #include "src/extra/themes/lv_themes.h" +#include "examples/lv_examples.h" /********************* * DEFINES diff --git a/lvgl.mk b/lvgl.mk index d85ae1c07..d9925e213 100644 --- a/lvgl.mk +++ b/lvgl.mk @@ -6,3 +6,4 @@ include $(LVGL_DIR)/$(LVGL_DIR_NAME)/src/lv_misc/lv_misc.mk include $(LVGL_DIR)/$(LVGL_DIR_NAME)/src/lv_draw/lv_draw.mk include $(LVGL_DIR)/$(LVGL_DIR_NAME)/src/lv_gpu/lv_gpu.mk include $(LVGL_DIR)/$(LVGL_DIR_NAME)/src/extra/extra.mk +include $(LVGL_DIR)/$(LVGL_DIR_NAME)/examples/examples.mk diff --git a/src/extra/widgets/spinner/lv_spinner.c b/src/extra/widgets/spinner/lv_spinner.c index 9448f0d85..94f395afb 100644 --- a/src/extra/widgets/spinner/lv_spinner.c +++ b/src/extra/widgets/spinner/lv_spinner.c @@ -20,6 +20,8 @@ /********************** * STATIC PROTOTYPES **********************/ +static void arc_anim_start_angle(void * obj, lv_anim_value_t v); +static void arc_anim_end_angle(void * obj, lv_anim_value_t v); /********************** * STATIC VARIABLES @@ -58,7 +60,7 @@ lv_obj_t * lv_spinner_create(lv_obj_t * par, uint32_t time, uint32_t arc_length) lv_anim_t a; lv_anim_init(&a); lv_anim_set_var(&a, spinner); - lv_anim_set_exec_cb(&a, (lv_anim_exec_xcb_t)lv_arc_set_end_angle); + lv_anim_set_exec_cb(&a, arc_anim_end_angle); lv_anim_set_repeat_count(&a, LV_ANIM_REPEAT_INFINITE); lv_anim_set_time(&a, time); lv_anim_set_values(&a, arc_length, 360 + arc_length); @@ -66,7 +68,7 @@ lv_obj_t * lv_spinner_create(lv_obj_t * par, uint32_t time, uint32_t arc_length) lv_anim_set_path(&a, &path); lv_anim_set_values(&a, 0, 360); - lv_anim_set_exec_cb(&a, (lv_anim_exec_xcb_t)lv_arc_set_start_angle); + lv_anim_set_exec_cb(&a, arc_anim_start_angle); lv_anim_start(&a); lv_arc_set_bg_angles(spinner, 0, 360); @@ -76,9 +78,19 @@ lv_obj_t * lv_spinner_create(lv_obj_t * par, uint32_t time, uint32_t arc_length) } - /********************** * STATIC FUNCTIONS **********************/ +static void arc_anim_start_angle(void * obj, lv_anim_value_t v) +{ + lv_arc_set_start_angle(obj, (uint16_t) v); +} + + +static void arc_anim_end_angle(void * obj, lv_anim_value_t v) +{ + lv_arc_set_end_angle(obj, (uint16_t) v); +} + #endif /*LV_USE_SPINNER*/ diff --git a/src/lv_core/lv_group.c b/src/lv_core/lv_group.c index 3f0ed0584..b171c7027 100644 --- a/src/lv_core/lv_group.c +++ b/src/lv_core/lv_group.c @@ -67,7 +67,7 @@ lv_group_t * lv_group_create(void) group->wrap = 1; #if LV_USE_USER_DATA - lv_memset_00(&group->user_data, sizeof(lv_user_data_t)); + group->user_data = NULL; #endif return group; @@ -368,18 +368,6 @@ lv_obj_t * lv_group_get_focused(const lv_group_t * group) return *group->obj_focus; } -#if LV_USE_USER_DATA -/** - * Get a pointer to the group's user data - * @param group pointer to an group - * @return pointer to the user data - */ -lv_user_data_t * lv_group_get_user_data(lv_group_t * group) -{ - return &group->user_data; -} -#endif - /** * Get the focus callback function of a group * @param group pointer to a group diff --git a/src/lv_core/lv_group.h b/src/lv_core/lv_group.h index b34b31653..713d33fae 100644 --- a/src/lv_core/lv_group.h +++ b/src/lv_core/lv_group.h @@ -60,7 +60,7 @@ typedef struct _lv_group_t { lv_group_focus_cb_t focus_cb; /**< A function to call when a new object is focused (optional)*/ #if LV_USE_USER_DATA - lv_user_data_t user_data; + void * user_data; #endif uint8_t frozen : 1; /**< 1: can't focus to new object*/ @@ -193,16 +193,6 @@ void lv_group_set_wrap(lv_group_t * group, bool en); */ struct _lv_obj_t * lv_group_get_focused(const lv_group_t * group); -#if LV_USE_USER_DATA -/** - * Get a pointer to the group's user data - * @param group pointer to an group - * @return pointer to the user data - */ -lv_user_data_t * lv_group_get_user_data(lv_group_t * group); - -#endif - /** * Get the focus callback function of a group * @param group pointer to a group diff --git a/src/lv_draw/lv_img_decoder.h b/src/lv_draw/lv_img_decoder.h index 46407550c..8eea0d212 100644 --- a/src/lv_draw/lv_img_decoder.h +++ b/src/lv_draw/lv_img_decoder.h @@ -90,7 +90,7 @@ typedef struct _lv_img_decoder { lv_img_decoder_close_f_t close_cb; #if LV_USE_USER_DATA - lv_user_data_t user_data; + void * user_data; #endif } lv_img_decoder_t; diff --git a/src/lv_font/lv_font.h b/src/lv_font/lv_font.h index a5a139608..69a59a75a 100644 --- a/src/lv_font/lv_font.h +++ b/src/lv_font/lv_font.h @@ -71,7 +71,7 @@ typedef struct _lv_font_struct { void * dsc; /**< Store implementation specific or run_time data or caching here*/ #if LV_USE_USER_DATA - lv_user_data_t user_data; /**< Custom user data for font. */ + void * user_data; /**< Custom user data for font. */ #endif } lv_font_t; diff --git a/src/lv_hal/lv_hal_disp.h b/src/lv_hal/lv_hal_disp.h index a9cceb168..38a8869ae 100644 --- a/src/lv_hal/lv_hal_disp.h +++ b/src/lv_hal/lv_hal_disp.h @@ -133,7 +133,7 @@ typedef struct _disp_drv_t { lv_color_t color_chroma_key; #if LV_USE_USER_DATA - lv_user_data_t user_data; /**< Custom display driver user data */ + void * user_data; /**< Custom display driver user data */ #endif } lv_disp_drv_t; diff --git a/src/lv_hal/lv_hal_indev.h b/src/lv_hal/lv_hal_indev.h index 86db51649..5a7ebf9b0 100644 --- a/src/lv_hal/lv_hal_indev.h +++ b/src/lv_hal/lv_hal_indev.h @@ -114,7 +114,7 @@ typedef struct _lv_indev_drv_t { void (*feedback_cb)(struct _lv_indev_drv_t *, uint8_t); #if LV_USE_USER_DATA - lv_user_data_t user_data; + void * user_data; #endif /**< Pointer to the assigned display*/ diff --git a/src/lv_misc/lv_anim.h b/src/lv_misc/lv_anim.h index 47d468c5d..495ded41f 100644 --- a/src/lv_misc/lv_anim.h +++ b/src/lv_misc/lv_anim.h @@ -76,7 +76,7 @@ typedef struct _lv_anim_t { lv_anim_start_cb_t start_cb; /**< Call it when the animation is starts (considering `delay`)*/ lv_anim_ready_cb_t ready_cb; /**< Call it when the animation is ready*/ #if LV_USE_USER_DATA - lv_user_data_t user_data; /**< Custom user data*/ + void * user_data; /**< Custom user data*/ #endif lv_anim_path_t path; /**< Describe the path (curve) of animations*/ int32_t start; /**< Start value*/ diff --git a/src/lv_misc/lv_fs.h b/src/lv_misc/lv_fs.h index 949356f25..6ba2c37a2 100644 --- a/src/lv_misc/lv_fs.h +++ b/src/lv_misc/lv_fs.h @@ -85,7 +85,7 @@ typedef struct _lv_fs_drv_t { lv_fs_res_t (*dir_close_cb)(struct _lv_fs_drv_t * drv, void * rddir_p); #if LV_USE_USER_DATA - lv_user_data_t user_data; /**< Custom file user data */ + void * user_data; /**< Custom file user data */ #endif } lv_fs_drv_t; diff --git a/tests/Makefile b/tests/Makefile index 702b683da..9ec0b9456 100644 --- a/tests/Makefile +++ b/tests/Makefile @@ -11,7 +11,7 @@ WARNINGS = -Werror -Wall -Wextra \ -Wempty-body -Wshift-negative-value -Wstack-usage=2048 \ -Wtype-limits -Wsizeof-pointer-memaccess -Wmissing-prototypes -Wno-discarded-qualifiers -#WARNINGS += -Wpedantic -pedantic-errors +WARNINGS += -Wpedantic -pedantic-errors #-Wno-unused-value -Wno-unused-parameter OPTIMIZATION ?= -O3 -g0 diff --git a/tests/build.py b/tests/build.py index 7ba6bb080..5a428e879 100755 --- a/tests/build.py +++ b/tests/build.py @@ -56,7 +56,7 @@ minimal_monochrome = { "LV_DPI_DEF":40, "LV_DRAW_COMPLEX":0, - "LV_USE_LOG":0, + "LV_USE_LOG":1, "LV_USE_ASSERT_NULL":0, "LV_USE_ASSERT_MALLOC":0, @@ -70,6 +70,8 @@ minimal_monochrome = { "LV_USE_BIDI": 0, "LV_USE_ARABIC_PERSIAN_CHARS":0, + + "LV_BUILD_EXAMPLES":1, # "LV_USE_THEME_MONO":1, # "LV_THEME_DEFAULT_INIT": "\\\"lv_theme_mono_init\\\"", @@ -90,7 +92,7 @@ minimal_16bit = { "LV_DPI_DEF":40, "LV_DRAW_COMPLEX":0, - "LV_USE_LOG":0, + "LV_USE_LOG":1, "LV_USE_ASSERT_NULL":0, "LV_USE_ASSERT_MALLOC":0, @@ -104,6 +106,8 @@ minimal_16bit = { "LV_USE_BIDI": 0, "LV_USE_ARABIC_PERSIAN_CHARS":0, + + "LV_BUILD_EXAMPLES":1, # "LV_USE_THEME_MONO":1, # "LV_THEME_DEFAULT_INIT": "\\\"lv_theme_mono_init\\\"", @@ -125,7 +129,7 @@ minimal_16bit_swap = { "LV_DPI_DEF":40, "LV_DRAW_COMPLEX":0, - "LV_USE_LOG":0, + "LV_USE_LOG":1, "LV_USE_ASSERT_NULL":0, "LV_USE_ASSERT_MALLOC":0, @@ -139,6 +143,8 @@ minimal_16bit_swap = { "LV_USE_BIDI": 0, "LV_USE_ARABIC_PERSIAN_CHARS":0, + + "LV_BUILD_EXAMPLES":1, # "LV_USE_THEME_MONO":1, # "LV_THEME_DEFAULT_INIT": "\\\"lv_theme_mono_init\\\"", @@ -209,6 +215,8 @@ full_32bit = { "LV_USE_BIDI": 1, "LV_USE_ARABIC_PERSIAN_CHARS":1, + "LV_BUILD_EXAMPLES":1, + # "LV_USE_THEME_MONO":1, # "LV_THEME_DEFAULT_INIT": "\\\"lv_theme_mono_init\\\"", # "LV_THEME_DEFAULT_COLOR_PRIMARY": "\\\"LV_COLOR_RED\\\"", diff --git a/tests/lv_test_core/lv_test_font_loader.c b/tests/lv_test_core/lv_test_font_loader.c index 7fcc21742..7722988ef 100644 --- a/tests/lv_test_core/lv_test_font_loader.c +++ b/tests/lv_test_core/lv_test_font_loader.c @@ -65,8 +65,11 @@ static int compare_fonts(lv_font_t * f1, lv_font_t * f2) { lv_test_assert_true(f1 != NULL && f2 != NULL, "font not null"); - lv_test_assert_ptr_eq(f1->get_glyph_dsc, f2->get_glyph_dsc, "glyph_dsc"); - lv_test_assert_ptr_eq(f1->get_glyph_bitmap, f2->get_glyph_bitmap, "glyph_bitmap"); +// Skip these test because -Wpedantic tells +// ISO C forbids passing argument 1 of ‘lv_test_assert_ptr_eq’ between function pointer and ‘void *’ +// lv_test_assert_ptr_eq(f1->get_glyph_dsc, f2->get_glyph_dsc, "glyph_dsc"); +// lv_test_assert_ptr_eq(f1->get_glyph_bitmap, f2->get_glyph_bitmap, "glyph_bitmap"); + lv_test_assert_int_eq(f1->line_height, f2->line_height, "line_height"); lv_test_assert_int_eq(f1->base_line, f2->base_line, "base_line"); #if !(LVGL_VERSION_MAJOR == 6 && LVGL_VERSION_MINOR == 0) diff --git a/tests/lv_test_widgets/lv_test_label.c b/tests/lv_test_widgets/lv_test_label.c index fb5c61d6f..f6f89e868 100644 --- a/tests/lv_test_widgets/lv_test_label.c +++ b/tests/lv_test_widgets/lv_test_label.c @@ -1,3 +1,5 @@ +typedef int _keep_pedantic_happy; + ///** // * @file lv_test_label.c // *