Conflict between windows.h and giomm/dbusmessage.h (2)



Generally speaking I try not to #include <windows.h> specifically but there are occasions when it can't be helped. For example, #including winsock.h automatically pulls in windows.h

I discovered this problem while building with VC++8. Maybe someone can confirm if it also affects later versions of MSVC?

        #include <windows.h>
#include <giomm.h> // ( or alternatively, #include <giomm/dbusmessage.h> )

Creating a source file with just those 2 lines gives me the following compiler error:-

        dbusmessage.h(353) : error C2332 'struct' : missing tag name

Line 353 of 'dbusmessage.h' looks like this:-

static Glib::RefPtr<Message> create_signal(const Glib::ustring& path, const Glib::ustring& interface, const Glib::ustring& signal);

I think it's the use of the name "interface" that's causing the conflict. In my VC IDE, the word "interface" gets printed in blue which usually indicates that it's a reserved word.

If anyone can reproduce this problem I'll file a report in bugzilla.

John


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]