Tracktion Engine Release build on iOS failing

I can build the Tracktion Engine Playback demo for iOS in Debug mode, but when I build in release mode, line 192 in the test below causes a build error: No matching function for call to 'min'

I was able to build after commenting out #define GRAPH_UNIT_TESTS_ALLOCATION 1

EDIT: I’m not sure why the behavior is different between debug and release builds for iOS, but it seems that I can compile a release build successfully by casting both arguments to to std::min to size_t like this:

const auto numToRemove = std::min ((size_t) num, (size_t) vec.size());

Can you switch the the develop branch please? I believe this is fixed there.

I’m getting the same error on the develop branch – still only getting the error with the Release build configuration.

Can I check what exactly you’re building? I’ve just done the following:

cd <root>/examples/DemoRunner
cmake -G Xcode -B build_ios  -DCMAKE_SYSTEM_NAME=iOS
# Opened the build_ios/DemoRunner.xcodeproj project
# Changed the deployment target to iOS 11.0
# Added a signing identity to stop Xcode complaining
# Switched to release
# Built without any warnings

What are the details of the No matching function for call to 'min' error?
I.e. what does it think the return type of vec.size() is? num surely has to be a size_t due to the cast?

Also, are you building for the simulator or a device? If so, what architecture (this will probably be different if you’re on an Intel or Apple Silicon Mac.