Ambiguous reference to AssertionHandler in fdebug.h

A user interface toolkit mainly for audio plug-ins (VST, AudioUnit, etc).
Post Reply
howardantares
Posts: 126
Joined: Tue Jun 21, 2016 1:46 pm

Ambiguous reference to AssertionHandler in fdebug.h

Post by howardantares » Mon Jul 15, 2019 4:51 pm

I am getting an error when trying to update to VST3 3.6.13, and its newer VSTGUI (from SDK 3.6.6), but am getting a conflict between two files' definitions of AssertionHandler:
...
In file included from ../../../../../antsdk/VST/VST_3.6.13/VST3_SDK/vstgui4/vstgui/lib/controls/coptionmenu.h:7:
In file included from ../../../../../antsdk/VST/VST_3.6.13/VST3_SDK/vstgui4/vstgui/lib/controls/cparamdisplay.h:7:
In file included from ../../../../../antsdk/VST/VST_3.6.13/VST3_SDK/vstgui4/vstgui/lib/controls/ccontrol.h:7:
In file included from ../../../../../antsdk/VST/VST_3.6.13/VST3_SDK/vstgui4/vstgui/lib/cview.h:7:
In file included from ../../../../../antsdk/VST/VST_3.6.13/VST3_SDK/vstgui4/vstgui/uidescription/../lib/vstguifwd.h:7:
In file included from ../../../../../antsdk/VST/VST_3.6.13/VST3_SDK/vstgui4/vstgui/lib/animation/../vstguibase.h:541:
../../../../../antsdk/VST/VST_3.6.13/VST3_SDK/vstgui4/vstgui/lib/vstguidebug.h:13:7: note: candidate found by name lookup is 'VSTGUI::AssertionHandler'
using AssertionHandler = std::function<void (const char* filename, const char* line, const char* desc)>;
^
...
../../../../../antsdk/VST/VST_3.6.13/VST3_SDK/base/source/fdebug.h:155:16: note: candidate found by name lookup is 'AssertionHandler'
typedef bool (*AssertionHandler) (const char* message);
^
It looks like that symbol is defined in both vsstguidebug.h and in fdebug.h, which is causing a conflict when I try to build my VSGT3 plugin.

Any ideas how I can resolve this conflict (preferably other than by editing the SDK)?

howardantares
Posts: 126
Joined: Tue Jun 21, 2016 1:46 pm

Re: Ambiguous reference to AssertionHandler in fdebug.h

Post by howardantares » Mon Jul 15, 2019 5:28 pm

Looks like I needed to remove "using namespace VSTGUI;" from some header files.

Post Reply