Browse Source

Fixed a compiler error in the DSP module when using clang C++17 support

tags/2021-05-28
hogliux 7 years ago
parent
commit
f0e035f742
1 changed files with 5 additions and 3 deletions
  1. +5
    -3
      modules/juce_dsp/processors/juce_WaveShaper.h

+ 5
- 3
modules/juce_dsp/processors/juce_WaveShaper.h View File

@@ -72,12 +72,14 @@ struct WaveShaper
};
//==============================================================================
#if JUCE_CXX17_IS_AVAILABLE
// Although clang supports C++17, their standard library still has no invoke_result
// support. Remove the "|| JUCE_CLANG" once clang supports this properly!
#if (! JUCE_CXX17_IS_AVAILABLE) || JUCE_CLANG
template <typename Functor>
static WaveShaper<typename std::invoke_result<Functor>, Functor> CreateWaveShaper (Functor functionToUse) { return {functionToUse}; }
static WaveShaper<typename std::result_of<Functor>, Functor> CreateWaveShaper (Functor functionToUse) { return {functionToUse}; }
#else
template <typename Functor>
static WaveShaper<typename std::result_of<Functor>, Functor> CreateWaveShaper (Functor functionToUse) { return {functionToUse}; }
static WaveShaper<typename std::invoke_result<Functor>, Functor> CreateWaveShaper (Functor functionToUse) { return {functionToUse}; }
#endif
} // namespace dsp


Loading…
Cancel
Save