Quellcode durchsuchen

add -Wextra-semi to CI tests and fix resulting warnings

Andre Weissflog vor 6 Monaten
Ursprung
Commit
adf2c22d94
8 geänderte Dateien mit 36 neuen und 31 gelöschten Zeilen
  1. 16 16
      sokol_app.h
  2. 7 7
      sokol_audio.h
  3. 2 2
      sokol_fetch.h
  4. 1 1
      sokol_log.h
  5. 7 2
      tests/CMakeLists.txt
  6. 1 1
      tests/functional/sokol_test.c
  7. 1 1
      util/sokol_imgui.h
  8. 1 1
      util/sokol_nuklear.h

+ 16 - 16
sokol_app.h

@@ -4863,7 +4863,7 @@ _SOKOL_PRIVATE void _sapp_ios_show_keyboard(bool shown) {
 #if defined(_SAPP_EMSCRIPTEN)
 
 #if defined(EM_JS_DEPS)
-EM_JS_DEPS(sokol_app, "$withStackSave,$stringToUTF8OnStack,$findCanvasEventTarget");
+EM_JS_DEPS(sokol_app, "$withStackSave,$stringToUTF8OnStack,$findCanvasEventTarget")
 #endif
 
 #ifdef __cplusplus
@@ -4970,11 +4970,11 @@ EM_JS(void, sapp_js_add_beforeunload_listener, (void), {
         }
     };
     window.addEventListener('beforeunload', Module.sokol_beforeunload);
-});
+})
 
 EM_JS(void, sapp_js_remove_beforeunload_listener, (void), {
     window.removeEventListener('beforeunload', Module.sokol_beforeunload);
-});
+})
 
 EM_JS(void, sapp_js_add_clipboard_listener, (void), {
     Module.sokol_paste = (event) => {
@@ -4985,11 +4985,11 @@ EM_JS(void, sapp_js_add_clipboard_listener, (void), {
         });
     };
     window.addEventListener('paste', Module.sokol_paste);
-});
+})
 
 EM_JS(void, sapp_js_remove_clipboard_listener, (void), {
     window.removeEventListener('paste', Module.sokol_paste);
-});
+})
 
 EM_JS(void, sapp_js_write_clipboard, (const char* c_str), {
     const str = UTF8ToString(c_str);
@@ -5007,7 +5007,7 @@ EM_JS(void, sapp_js_write_clipboard, (const char* c_str), {
     ta.select();
     document.execCommand('copy');
     document.body.removeChild(ta);
-});
+})
 
 _SOKOL_PRIVATE void _sapp_emsc_set_clipboard_string(const char* str) {
     sapp_js_write_clipboard(str);
@@ -5053,7 +5053,7 @@ EM_JS(void, sapp_js_add_dragndrop_listeners, (void), {
     canvas.addEventListener('dragleave', Module.sokol_dragleave, false);
     canvas.addEventListener('dragover',  Module.sokol_dragover, false);
     canvas.addEventListener('drop',      Module.sokol_drop, false);
-});
+})
 
 EM_JS(uint32_t, sapp_js_dropped_file_size, (int index), {
     \x2F\x2A\x2A @suppress {missingProperties} \x2A\x2F
@@ -5064,7 +5064,7 @@ EM_JS(uint32_t, sapp_js_dropped_file_size, (int index), {
     else {
         return files[index].size;
     }
-});
+})
 
 EM_JS(void, sapp_js_fetch_dropped_file, (int index, _sapp_html5_fetch_callback callback, void* buf_ptr, uint32_t buf_size, void* user_data), {
     const reader = new FileReader();
@@ -5086,7 +5086,7 @@ EM_JS(void, sapp_js_fetch_dropped_file, (int index, _sapp_html5_fetch_callback c
     \x2F\x2A\x2A @suppress {missingProperties} \x2A\x2F
     const files = Module.sokol_dropped_files;
     reader.readAsArrayBuffer(files[index]);
-});
+})
 
 EM_JS(void, sapp_js_remove_dragndrop_listeners, (void), {
     \x2F\x2A\x2A @suppress {missingProperties} \x2A\x2F
@@ -5095,7 +5095,7 @@ EM_JS(void, sapp_js_remove_dragndrop_listeners, (void), {
     canvas.removeEventListener('dragleave', Module.sokol_dragleave);
     canvas.removeEventListener('dragover',  Module.sokol_dragover);
     canvas.removeEventListener('drop',      Module.sokol_drop);
-});
+})
 
 EM_JS(void, sapp_js_init, (const char* c_str_target_selector, const char* c_str_document_title), {
     if (c_str_document_title !== 0) {
@@ -5116,7 +5116,7 @@ EM_JS(void, sapp_js_init, (const char* c_str_target_selector, const char* c_str_
     if (!Module.sapp_emsc_target.requestPointerLock) {
         console.warn("sokol_app.h: target doesn't support requestPointerLock: ", target_selector_str);
     }
-});
+})
 
 _SOKOL_PRIVATE EM_BOOL _sapp_emsc_pointerlockchange_cb(int emsc_type, const EmscriptenPointerlockChangeEvent* emsc_event, void* user_data) {
     _SOKOL_UNUSED(emsc_type);
@@ -5140,13 +5140,13 @@ EM_JS(void, sapp_js_request_pointerlock, (void), {
             Module.sapp_emsc_target.requestPointerLock();
         }
     }
-});
+})
 
 EM_JS(void, sapp_js_exit_pointerlock, (void), {
     if (document.exitPointerLock) {
         document.exitPointerLock();
     }
-});
+})
 
 _SOKOL_PRIVATE void _sapp_emsc_lock_mouse(bool lock) {
     if (lock) {
@@ -5193,7 +5193,7 @@ EM_JS(void, sapp_js_set_cursor, (int cursor_type, int shown), {
         }
         Module.sapp_emsc_target.style.cursor = cursor;
     }
-});
+})
 
 _SOKOL_PRIVATE void _sapp_emsc_update_cursor(sapp_mouse_cursor cursor, bool shown) {
     SOKOL_ASSERT((cursor >= 0) && (cursor < _SAPP_MOUSECURSOR_NUM));
@@ -5206,7 +5206,7 @@ EM_JS(void, sapp_js_clear_favicon, (void), {
     if (link) {
         document.head.removeChild(link);
     }
-});
+})
 
 EM_JS(void, sapp_js_set_favicon, (int w, int h, const uint8_t* pixels), {
     const canvas = document.createElement('canvas');
@@ -5221,7 +5221,7 @@ EM_JS(void, sapp_js_set_favicon, (int w, int h, const uint8_t* pixels), {
     new_link.rel = 'shortcut icon';
     new_link.href = canvas.toDataURL();
     document.head.appendChild(new_link);
-});
+})
 
 _SOKOL_PRIVATE void _sapp_emsc_set_icon(const sapp_icon_desc* icon_desc, int num_images) {
     SOKOL_ASSERT((num_images > 0) && (num_images <= SAPP_MAX_ICONIMAGES));

+ 7 - 7
sokol_audio.h

@@ -1431,8 +1431,8 @@ _SOKOL_PRIVATE int _saudio_fifo_read(_saudio_fifo_t* fifo, uint8_t* ptr, int num
 _SOKOL_PRIVATE bool _saudio_dummy_backend_init(void) {
     _saudio.bytes_per_frame = _saudio.num_channels * (int)sizeof(float);
     return true;
-};
-_SOKOL_PRIVATE void _saudio_dummy_backend_shutdown(void) { };
+}
+_SOKOL_PRIVATE void _saudio_dummy_backend_shutdown(void) { }
 
 //  █████  ██      ███████  █████
 // ██   ██ ██      ██      ██   ██
@@ -1851,7 +1851,7 @@ EM_JS(int, saudio_js_init, (int sample_rate, int num_channels, int buffer_size),
     else {
         return 0;
     }
-});
+})
 
 /* shutdown the WebAudioContext and ScriptProcessorNode */
 EM_JS(void, saudio_js_shutdown, (void), {
@@ -1865,7 +1865,7 @@ EM_JS(void, saudio_js_shutdown, (void), {
         Module._saudio_context = null;
         Module._saudio_node = null;
     }
-});
+})
 
 /* get the actual sample rate back from the WebAudio context */
 EM_JS(int, saudio_js_sample_rate, (void), {
@@ -1875,7 +1875,7 @@ EM_JS(int, saudio_js_sample_rate, (void), {
     else {
         return 0;
     }
-});
+})
 
 /* get the actual buffer size in number of frames */
 EM_JS(int, saudio_js_buffer_frames, (void), {
@@ -1885,7 +1885,7 @@ EM_JS(int, saudio_js_buffer_frames, (void), {
     else {
         return 0;
     }
-});
+})
 
 /* return 1 if the WebAudio context is currently suspended, else 0 */
 EM_JS(int, saudio_js_suspended, (void), {
@@ -1897,7 +1897,7 @@ EM_JS(int, saudio_js_suspended, (void), {
             return 0;
         }
     }
-});
+})
 
 _SOKOL_PRIVATE bool _saudio_webaudio_backend_init(void) {
     if (saudio_js_init(_saudio.sample_rate, _saudio.num_channels, _saudio.buffer_frames)) {

+ 2 - 2
sokol_fetch.h

@@ -2213,7 +2213,7 @@ EM_JS(void, sfetch_js_send_head_request, (uint32_t slot_id, const char* path_cst
         }
     };
     req.send();
-});
+})
 
 /* if bytes_to_read != 0, a range-request will be sent, otherwise a normal request */
 EM_JS(void, sfetch_js_send_get_request, (uint32_t slot_id, const char* path_cstr, uint32_t offset, uint32_t bytes_to_read, void* buf_ptr, uint32_t buf_size), {
@@ -2244,7 +2244,7 @@ EM_JS(void, sfetch_js_send_get_request, (uint32_t slot_id, const char* path_cstr
         }
     };
     req.send();
-});
+})
 
 /*=== emscripten specific C helper functions =================================*/
 #ifdef __cplusplus

+ 1 - 1
sokol_log.h

@@ -245,7 +245,7 @@ EM_JS(void, slog_js_log, (uint32_t level, const char* c_str), {
         case 2: console.warn(str); break;
         default: console.info(str); break;
     }
-});
+})
 #endif
 
 SOKOL_API_IMPL void slog_func(const char* tag, uint32_t log_level, uint32_t log_item, const char* message, uint32_t line_nr, const char* filename, void* user_data) {

+ 7 - 2
tests/CMakeLists.txt

@@ -51,12 +51,17 @@ if (CMAKE_CXX_COMPILER_ID MATCHES "MSVC")
     set(c_flags ${c_flags} /W4 /WX /D_CRT_SECURE_NO_WARNINGS)
     set(cxx_flags ${cxx_flags} /W4 /WX /EHsc /D_CRT_SECURE_NO_WARNINGS)
 else()
-    set(c_flags ${c_flags} -Wall -Wextra -Werror -Wsign-conversion -Wstrict-prototypes)
-    set(cxx_flags ${cxx_flags} -Wall -Wextra -Werror -Wsign-conversion -fno-rtti -fno-exceptions)
+    set(c_flags ${c_flags} -Wall -Wextra -Werror -Wsign-conversion -Wstrict-prototypes -Wextra-semi)
+    set(cxx_flags ${cxx_flags} -Wall -Wextra -Werror -Wsign-conversion -fno-rtti -fno-exceptions -Wextra-semi)
     if (CMAKE_CXX_COMPILER_ID MATCHES "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
         set(c_flags ${c_flags} -Wno-missing-field-initializers)
         set(cxx_flags ${cxx_flags} -Wno-missing-field-initializers)
     endif()
+    if (OSX_IOS)
+        # temp fix for PVRTC formats
+        set(c_flags ${c_flags} -Wno-deprecated-declarations)
+        set(cxx_flags ${cxx_flags} -Wno-deprecated-declarations)
+    endif()
     if (USE_ANALYZER)
         # FIXME: consider using clang-tidy via CMAKE_CXX_CLANG_TIDY: https://ortogonal.github.io/cmake-clang-tidy/
         # with the default settings this spams the output with irrelevant C++ coding style warnings in 3rd party libs though

+ 1 - 1
tests/functional/sokol_test.c

@@ -4,4 +4,4 @@
 //------------------------------------------------------------------------------
 #include "utest.h"
 
-UTEST_MAIN();
+UTEST_MAIN()

+ 1 - 1
util/sokol_imgui.h

@@ -2233,7 +2233,7 @@ EM_JS(int, simgui_js_is_osx, (void), {
     } else {
         return 0;
     }
-});
+})
 #endif
 
 // ██       ██████   ██████   ██████  ██ ███    ██  ██████

+ 1 - 1
util/sokol_nuklear.h

@@ -2215,7 +2215,7 @@ EM_JS(int, snk_js_is_osx, (void), {
     } else {
         return 0;
     }
-});
+})
 #endif
 
 static bool _snk_is_osx(void) {