Compiler error : Use of class template 'Point' requires template arguments


I have tried to compile my plugin on Xcode 7.3.1 and received the following compiler errors.

Use of class template ‘Point’ requires template arguments (on Finder.h)


Reference to ‘Component’ is ambiguous (on Components.h)

The plugin compiles without errors on Xcode6 with Base SDK OSX 10.9 (gives again the errors above on OSX 10.11)

but on Xcode7.3 I can only select Base SDK OSX 10.11 which produces these errors above.

Any ideas what is going on the compiler side ?

best wishes

Are you compiling a plugin? Which plug-in type? Also, are you compiling for 32-bit or 64-bit?

Hi, yes it is an instrument plugin however also there is an Fx version.

I have encountered a similar thread on the forum, but I have no intention to compile against previous OS versions. It is 64bit. Even if I try the same errors show up.


I have installed OSX10.9 SDK to Xcode7.3 but then there was another compiler error concerning static libraries, however this thread has solved it

But still I cannot compile the plugin with OSX 10.11 SDK on Xcode7.3 neither on Xcode6

The Finder.h defines a Point and a Component. However, juce defines a Point and a Component, which can clash each other. Are you including any Apple headers in your sources, and if so, which?

There were already some confusions half year ago, when the include sequences within juce were changed. So I think it points to that direction.

Are you using the latest version of juce? I’m sure Timur spent some time fairly recently making sure that all the edge-cases where this happened were fixed.

When including any of your header files, make sure that #include “…/JuceLibraryCode/JuceHeader.h” is the last of the #include lines. This has solved it for me.

thanks for the tip, I have checked. Nothing about Apple headers, only custom class definitions and the Juce header.

well, the Juce version is a bit old. The newest one works OK with Xode7.3. However I was hoping to fix this with the existing configuration of the project.

At the end exporting it to the newest Juce version will be necessary but will cost a lot of time. I use a good amount of OpenGL code which will create lots of problems at first instance.

I have tried to put all of them at the end of include files section, but didn’t help. Thanks for the trick anyway.