When including xmpp.h, many syntax errors appear from all xmpp .h files

This may be a bug in the engine but i wasn’t sure if it was me. so i created a empty class and begun to write a networking wrapper using xmpp. I included “Runtime/Online/XMPP/Public/Xmpp.h” and tried to compile. i got back these errors:

2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(57): error C2079: 'FXmppUserJid' uses undefined class 'XMPP_API'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(58): error C2059: syntax error: 'public'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(68): error C2143: syntax error: missing ';' before '{'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(68): error C2447: '{': missing function header (old-style formal list?)
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(85): error C2270: 'ParseResource': modifiers not allowed on nonmember functions
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(87): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(87): error C2143: syntax error: missing ',' before '&'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(88): error C2803: 'operator ==' must have at least one formal parameter of class type
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(88): error C2805: binary 'operator ==' has too few parameters
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(90): error C2065: 'Other': undeclared identifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(90): error C2228: left of '.Id' must have class/struct/union
2>  c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(90): note: type is 'unknown-type'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(91): error C2065: 'Other': undeclared identifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(91): error C2228: left of '.Domain' must have class/struct/union
2>  c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(91): note: type is 'unknown-type'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(92): error C2065: 'Other': undeclared identifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(92): error C2228: left of '.Resource' must have class/struct/union
2>  c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(92): note: type is 'unknown-type'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(97): error C2270: 'GetFullPath': modifiers not allowed on nonmember functions
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(112): error C2270: 'IsValid': modifiers not allowed on nonmember functions
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(115): error C2059: syntax error: '}'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(115): error C2143: syntax error: missing ';' before '}'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(174): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(174): error C2143: syntax error: missing ';' before '&'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(174): error C2433: 'IXmppConnection::FXmppUserJid': 'virtual' not permitted on data declarations
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(174): error C2238: unexpected token(s) preceding ';'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(183): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(183): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(192): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(192): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(200): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppConnection.h(200): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMessages.h(16): error C3646: 'FromJid': unknown override specifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMessages.h(16): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMessages.h(18): error C3646: 'ToJid': unknown override specifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMessages.h(18): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMessages.h(54): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMessages.h(54): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppChat.h(16): error C3646: 'FromJid': unknown override specifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppChat.h(16): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppChat.h(18): error C3646: 'ToJid': unknown override specifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppChat.h(18): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppChat.h(52): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppChat.h(52): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPresence.h(130): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPresence.h(130): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(36): error C3646: 'MemberJid': unknown override specifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(36): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(158): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(158): error C2143: syntax error: missing ',' before '&'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(185): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(185): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(189): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(189): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(193): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(193): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(197): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppMultiUserChat.h(197): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(46): error C3646: 'FromJid': unknown override specifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(46): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(48): error C3646: 'ToJid': unknown override specifier
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(48): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(114): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(114): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(118): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(118): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(122): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppPubSub.h(122): error C2146: syntax error: missing '>' before identifier 'FXmppUserJid'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppModule.h(11): error C2079: 'FXmppModule' uses undefined class 'XMPP_API'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppModule.h(11): error C2143: syntax error: missing ';' before ':'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppModule.h(11): error C2059: syntax error: ':'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppModule.h(12): error C2059: syntax error: 'public'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppModule.h(13): error C2143: syntax error: missing ';' before '{'
2>c:\program files\epic games\4.11\engine\source\runtime\online\xmpp\public\XmppModule.h(13): error C2447: '{': missing function header (old-style formal list?)

I don’t know if it’s just me or if this is a bug with the engine but it’s definitely messing with my workflow.

Resolved. So what i forgot to do is include “XMPP” in the public dependencies in my build file. It looks like this now.

PublicDependencyModuleNames.AddRange(new string[] { "Core", "CoreUObject", "Engine", "InputCore", "Json", "XMPP" });