Updated to gcc 7.2.1 and now get the following error:
In file included from …/…/JuceLibraryCode/modules/juce_dsp/juce_dsp.h:244:0,
from …/…/Source/…/JuceLibraryCode/JuceHeader.h:22,
from …/…/Source/ProcessAudio.h:12,
from …/…/Source/ProcessAudio.cpp:11:
…/…/JuceLibraryCode/modules/juce_dsp/containers/juce_SIMDRegister.h: In instantiation of ‘struct juce::dsp::SIMDRegister’:
…/…/Source/ProcessAudio.cpp:158:81: recursively required by substitution of ‘template juce::dsp::SIMDRegister juce::jmin(juce::dsp::SIMDRegister, juce::dsp::SIMDRegister) [with Type = long long int]’
…/…/Source/ProcessAudio.cpp:158:81: required from here
…/…/JuceLibraryCode/modules/juce_dsp/containers/juce_SIMDRegister.h:86:52: error: invalid use of incomplete type ‘struct juce::dsp::SIMDNativeOps’
using vSIMDType = typename NativeOps::vSIMDType;
^
In file included from …/…/JuceLibraryCode/modules/juce_dsp/juce_dsp.h:234:0,
from …/…/Source/…/JuceLibraryCode/JuceHeader.h:22,
from …/…/Source/ProcessAudio.h:12,
from …/…/Source/ProcessAudio.cpp:11:
…/…/JuceLibraryCode/modules/juce_dsp/native/juce_avx_SIMDNativeOps.h:56:8: note: declaration of ‘struct juce::dsp::SIMDNativeOps’
struct SIMDNativeOps;
The line in question is int64 posToStart = jmin<int64>(roundf(event.start * sampleRate),numSamps);
This will work if I use an int as the templated type instead of int64. The audioFormatReader returns an int64 for the number of samples. Works fine on OS X.