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



I could imagine that the problem is not caused by windows.h, but by winsock.h as the documentation says Gio::Socket uses winsock2 (afaik winsock2.h) and gio(mm) compiles on windows. Have you tried only including giomm.h and windows.h without winsock?

If you have no special reason to use winsocks, you should better just use the socket class which comes with Giomm, Gio::Socket.

Am 15.08.2013 11:20, schrieb John Emmas:
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
_______________________________________________
gtkmm-list mailing list
gtkmm-list gnome org
https://mail.gnome.org/mailman/listinfo/gtkmm-list



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