From 8b5bc6958202d0b3561f5ea238f7adf16e2acbff Mon Sep 17 00:00:00 2001 From: Tom Poole Date: Wed, 5 Jun 2019 09:35:52 +0100 Subject: [PATCH] Fixed some more Linux compiler warnings --- .../format_types/juce_AU_Shared.h | 4 ++-- .../processors/juce_AudioPluginInstance.h | 4 ++-- .../processors/juce_AudioProcessor.h | 12 +++++----- modules/juce_core/threads/juce_Thread.cpp | 2 +- modules/juce_gui_basics/juce_gui_basics.cpp | 11 ++++++++++ modules/juce_gui_extra/juce_gui_extra.cpp | 22 +++++++++++++++---- .../juce_linux_X11_WebBrowserComponent.cpp | 2 +- 7 files changed, 41 insertions(+), 16 deletions(-) diff --git a/modules/juce_audio_processors/format_types/juce_AU_Shared.h b/modules/juce_audio_processors/format_types/juce_AU_Shared.h index 967886fc17..be95a65ad6 100644 --- a/modules/juce_audio_processors/format_types/juce_AU_Shared.h +++ b/modules/juce_audio_processors/format_types/juce_AU_Shared.h @@ -304,11 +304,11 @@ struct AudioUnitHelpers } } - template + template static bool isLayoutSupported (const AudioProcessor& processor, bool isInput, int busIdx, int numChannels, - const short (&channelLayoutList) [(size_t) numLayouts][2], + const short (&channelLayoutList) [numLayouts][2], bool hasLayoutMap = true) { if (const AudioProcessor::Bus* bus = processor.getBus (isInput, busIdx)) diff --git a/modules/juce_audio_processors/processors/juce_AudioPluginInstance.h b/modules/juce_audio_processors/processors/juce_AudioPluginInstance.h index cf63e85bff..fa3825cacd 100644 --- a/modules/juce_audio_processors/processors/juce_AudioPluginInstance.h +++ b/modules/juce_audio_processors/processors/juce_AudioPluginInstance.h @@ -115,8 +115,8 @@ protected: AudioPluginInstance() = default; AudioPluginInstance (const BusesProperties& ioLayouts) : AudioProcessor (ioLayouts) {} - template - AudioPluginInstance (const short channelLayoutList[(size_t) numLayouts][2]) : AudioProcessor (channelLayoutList) {} + template + AudioPluginInstance (const short channelLayoutList[numLayouts][2]) : AudioProcessor (channelLayoutList) {} private: void assertOnceOnDeprecatedMethodUse() const noexcept; diff --git a/modules/juce_audio_processors/processors/juce_AudioProcessor.h b/modules/juce_audio_processors/processors/juce_AudioProcessor.h index 981fcecd4d..26965b754f 100644 --- a/modules/juce_audio_processors/processors/juce_AudioProcessor.h +++ b/modules/juce_audio_processors/processors/juce_AudioProcessor.h @@ -763,8 +763,8 @@ public: return containsLayout (layouts, layoutListToArray (channelLayoutList)); } - template - static bool containsLayout (const BusesLayout& layouts, const short (&channelLayoutList) [(size_t) numLayouts][2]) + template + static bool containsLayout (const BusesLayout& layouts, const short (&channelLayoutList) [numLayouts][2]) { return containsLayout (layouts, layoutListToArray (channelLayoutList)); } @@ -780,9 +780,9 @@ public: } @endcode */ - template + template BusesLayout getNextBestLayoutInLayoutList (const BusesLayout& layouts, - const short (&channelLayoutList) [(size_t) numLayouts][2]) + const short (&channelLayoutList) [numLayouts][2]) { return getNextBestLayoutInList (layouts, layoutListToArray (channelLayoutList)); } @@ -1421,8 +1421,8 @@ private: int16 inChannels = 0, outChannels = 0; }; - template - static Array layoutListToArray (const short (&configuration) [(size_t) numLayouts][2]) + template + static Array layoutListToArray (const short (&configuration) [numLayouts][2]) { Array layouts; diff --git a/modules/juce_core/threads/juce_Thread.cpp b/modules/juce_core/threads/juce_Thread.cpp index e5ca7d24ef..f3f8bb976f 100644 --- a/modules/juce_core/threads/juce_Thread.cpp +++ b/modules/juce_core/threads/juce_Thread.cpp @@ -315,7 +315,7 @@ struct LambdaThread : public Thread void run() override { fn(); - fn = {}; // free any objects that the lambda might contain while the thread is still active + fn = nullptr; // free any objects that the lambda might contain while the thread is still active } std::function fn; diff --git a/modules/juce_gui_basics/juce_gui_basics.cpp b/modules/juce_gui_basics/juce_gui_basics.cpp index 35b88c59f9..478dd37f7a 100644 --- a/modules/juce_gui_basics/juce_gui_basics.cpp +++ b/modules/juce_gui_basics/juce_gui_basics.cpp @@ -309,7 +309,18 @@ namespace juce #elif JUCE_LINUX #include "native/juce_linux_X11.cpp" #include "native/juce_linux_X11_Clipboard.cpp" + + #if JUCE_GCC + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" + #endif + #include "native/juce_linux_X11_Windowing.cpp" + + #if JUCE_GCC + #pragma GCC diagnostic pop + #endif + #include "native/juce_linux_FileChooser.cpp" #elif JUCE_ANDROID diff --git a/modules/juce_gui_extra/juce_gui_extra.cpp b/modules/juce_gui_extra/juce_gui_extra.cpp index e107705425..6d6435a6a6 100644 --- a/modules/juce_gui_extra/juce_gui_extra.cpp +++ b/modules/juce_gui_extra/juce_gui_extra.cpp @@ -101,14 +101,17 @@ #include #include - #if JUCE_GCC && __GNUC__ > 7 + #if JUCE_GCC #pragma GCC diagnostic push - #pragma GCC diagnostic ignored "-Wparentheses" + #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" + #if __GNUC__ > 7 + #pragma GCC diagnostic ignored "-Wparentheses" + #endif #endif #include - #if JUCE_GCC && __GNUC__ > 7 + #if JUCE_GCC #pragma GCC diagnostic pop #endif @@ -172,10 +175,21 @@ //============================================================================== #elif JUCE_LINUX - #include "native/juce_linux_XEmbedComponent.cpp" + #if JUCE_GCC + #pragma GCC diagnostic push + #pragma GCC diagnostic ignored "-Wzero-as-null-pointer-constant" + #endif + + #include "native/juce_linux_XEmbedComponent.cpp" + #if JUCE_WEB_BROWSER #include "native/juce_linux_X11_WebBrowserComponent.cpp" #endif + + #if JUCE_GCC + #pragma GCC diagnostic pop + #endif + #include "native/juce_linux_X11_SystemTrayIcon.cpp" //============================================================================== diff --git a/modules/juce_gui_extra/native/juce_linux_X11_WebBrowserComponent.cpp b/modules/juce_gui_extra/native/juce_linux_X11_WebBrowserComponent.cpp index 19c8404542..720ae024d9 100644 --- a/modules/juce_gui_extra/native/juce_linux_X11_WebBrowserComponent.cpp +++ b/modules/juce_gui_extra/native/juce_linux_X11_WebBrowserComponent.cpp @@ -612,7 +612,7 @@ private: int result = 0; while (result == 0 || (result < 0 && errno == EINTR)) - result = select (max_fd + 1, &set, NULL, NULL, NULL); + result = select (max_fd + 1, &set, nullptr, nullptr, nullptr); if (result < 0) break;