Temporary header file '/tmp/XDrPsg2cTs/dump1.h' with the following content will be compiled to create GCC translation unit dump: // add defines #define __STDC_VERSION__ 201710L #define _GXX_NULLPTR_T #define CLUTTER_ENABLE_COMPOSITOR_API 1 #define _REGEX_NELTS(n) #define _Atomic #define PACKED #define getaddrinfo_a(a,b,c,d) // add includes #include "/usr/include/time.h" #include "/usr/include/inspircd/aligned_storage.h" #include "/usr/include/inspircd/bancache.h" #include "/usr/include/inspircd/base.h" #include "/usr/include/inspircd/channels.h" #include "/usr/include/inspircd/clientprotocol.h" #include "/usr/include/inspircd/clientprotocolevent.h" #include "/usr/include/inspircd/clientprotocolmsg.h" #include "/usr/include/inspircd/command_parse.h" #include "/usr/include/inspircd/compat.h" #include "/usr/include/inspircd/config.h" #include "/usr/include/inspircd/configparser.h" #include "/usr/include/inspircd/configreader.h" #include "/usr/include/inspircd/consolecolors.h" #include "/usr/include/inspircd/convto.h" #include "/usr/include/inspircd/ctables.h" #include "/usr/include/inspircd/cull_list.h" #include "/usr/include/inspircd/dynamic.h" #include "/usr/include/inspircd/dynref.h" #include "/usr/include/inspircd/event.h" #include "/usr/include/inspircd/exitcodes.h" #include "/usr/include/inspircd/extensible.h" #include "/usr/include/inspircd/filelogger.h" #include "/usr/include/inspircd/fileutils.h" #include "/usr/include/inspircd/flat_map.h" #include "/usr/include/inspircd/hashcomp.h" #include "/usr/include/inspircd/inspircd.h" #include "/usr/include/inspircd/inspsocket.h" #include "/usr/include/inspircd/inspstring.h" #include "/usr/include/inspircd/intrusive_list.h" #include "/usr/include/inspircd/intrusive_list_impl.h" #include "/usr/include/inspircd/iohook.h" #include "/usr/include/inspircd/isupportmanager.h" #include "/usr/include/inspircd/listmode.h" #include "/usr/include/inspircd/logger.h" #include "/usr/include/inspircd/membership.h" #include "/usr/include/inspircd/message.h" #include "/usr/include/inspircd/mode.h" #include "/usr/include/inspircd/modechange.h" #include "/usr/include/inspircd/moduledefs.h" #include "/usr/include/inspircd/modules/account.h" #include "/usr/include/inspircd/modules/away.h" #include "/usr/include/inspircd/modules/callerid.h" #include "/usr/include/inspircd/modules/cap.h" #include "/usr/include/inspircd/modules/ctctags.h" #include "/usr/include/inspircd/modules/dns.h" #include "/usr/include/inspircd/modules/exemption.h" #include "/usr/include/inspircd/modules/geolocation.h" #include "/usr/include/inspircd/modules/hash.h" #include "/usr/include/inspircd/modules/httpd.h" #include "/usr/include/inspircd/modules/invite.h" #include "/usr/include/inspircd/modules/ircv3.h" #include "/usr/include/inspircd/modules/ircv3_batch.h" #include "/usr/include/inspircd/modules/ircv3_replies.h" #include "/usr/include/inspircd/modules/ircv3_servertime.h" #include "/usr/include/inspircd/modules/ldap.h" #include "/usr/include/inspircd/modules/monitor.h" #include "/usr/include/inspircd/modules/names.h" #include "/usr/include/inspircd/modules/regex.h" #include "/usr/include/inspircd/modules/reload.h" #include "/usr/include/inspircd/modules/sasl.h" #include "/usr/include/inspircd/modules/server.h" #include "/usr/include/inspircd/modules/shun.h" #include "/usr/include/inspircd/modules/sql.h" #include "/usr/include/inspircd/modules/ssl.h" #include "/usr/include/inspircd/modules/stats.h" #include "/usr/include/inspircd/modules/webirc.h" #include "/usr/include/inspircd/modules/who.h" #include "/usr/include/inspircd/modules/whois.h" #include "/usr/include/inspircd/modules.h" #include "/usr/include/inspircd/numeric.h" #include "/usr/include/inspircd/numericbuilder.h" #include "/usr/include/inspircd/numerics.h" #include "/usr/include/inspircd/parammode.h" #include "/usr/include/inspircd/protocol.h" #include "/usr/include/inspircd/serialize.h" #include "/usr/include/inspircd/server.h" #include "/usr/include/inspircd/snomasks.h" #include "/usr/include/inspircd/socket.h" #include "/usr/include/inspircd/socketengine.h" #include "/usr/include/inspircd/stdalgo.h" #include "/usr/include/inspircd/threadengine.h" #include "/usr/include/inspircd/threadengines/threadengine_pthread.h" #include "/usr/include/inspircd/threadengines/threadengine_win32.h" #include "/usr/include/inspircd/timer.h" #include "/usr/include/inspircd/token_list.h" #include "/usr/include/inspircd/typedefs.h" #include "/usr/include/inspircd/uid.h" #include "/usr/include/inspircd/usermanager.h" #include "/usr/include/inspircd/users.h" #include "/usr/include/inspircd/xline.h" // add namespaces namespace Away{typedef int tmp_add_type_1;} Away::tmp_add_type_1 tmp_add_func_1(){return 0;}; namespace CallerID{typedef int tmp_add_type_2;} CallerID::tmp_add_type_2 tmp_add_func_2(){return 0;}; namespace Cap{typedef int tmp_add_type_3;} Cap::tmp_add_type_3 tmp_add_func_3(){return 0;}; namespace CheckExemption{typedef int tmp_add_type_4;} CheckExemption::tmp_add_type_4 tmp_add_func_4(){return 0;}; namespace ClientProtocol{typedef int tmp_add_type_5;} ClientProtocol::tmp_add_type_5 tmp_add_func_5(){return 0;}; namespace ClientProtocol{namespace Events{typedef int tmp_add_type_6;}} ClientProtocol::Events::tmp_add_type_6 tmp_add_func_6(){return 0;}; namespace ClientProtocol{namespace Messages{typedef int tmp_add_type_7;}} ClientProtocol::Messages::tmp_add_type_7 tmp_add_func_7(){return 0;}; namespace CTCTags{typedef int tmp_add_type_8;} CTCTags::tmp_add_type_8 tmp_add_func_8(){return 0;}; namespace DNS{typedef int tmp_add_type_9;} DNS::tmp_add_type_9 tmp_add_func_9(){return 0;}; namespace Events{typedef int tmp_add_type_10;} Events::tmp_add_type_10 tmp_add_func_10(){return 0;}; namespace Geolocation{typedef int tmp_add_type_11;} Geolocation::tmp_add_type_11 tmp_add_func_11(){return 0;}; namespace insp{typedef int tmp_add_type_12;} insp::tmp_add_type_12 tmp_add_func_12(){return 0;}; namespace insp{namespace detail{typedef int tmp_add_type_13;}} insp::detail::tmp_add_type_13 tmp_add_func_13(){return 0;}; namespace Invite{typedef int tmp_add_type_14;} Invite::tmp_add_type_14 tmp_add_func_14(){return 0;}; namespace irc{typedef int tmp_add_type_15;} irc::tmp_add_type_15 tmp_add_func_15(){return 0;}; namespace irc{namespace sockets{typedef int tmp_add_type_16;}} irc::sockets::tmp_add_type_16 tmp_add_func_16(){return 0;}; namespace IRCv3{typedef int tmp_add_type_17;} IRCv3::tmp_add_type_17 tmp_add_func_17(){return 0;}; namespace IRCv3{namespace Batch{typedef int tmp_add_type_18;}} IRCv3::Batch::tmp_add_type_18 tmp_add_func_18(){return 0;}; namespace IRCv3{namespace Replies{typedef int tmp_add_type_19;}} IRCv3::Replies::tmp_add_type_19 tmp_add_func_19(){return 0;}; namespace IRCv3{namespace ServerTime{typedef int tmp_add_type_20;}} IRCv3::ServerTime::tmp_add_type_20 tmp_add_func_20(){return 0;}; namespace Modes{typedef int tmp_add_type_21;} Modes::tmp_add_type_21 tmp_add_func_21(){return 0;}; namespace Monitor{typedef int tmp_add_type_22;} Monitor::tmp_add_type_22 tmp_add_func_22(){return 0;}; namespace Names{typedef int tmp_add_type_23;} Names::tmp_add_type_23 tmp_add_func_23(){return 0;}; namespace Numeric{typedef int tmp_add_type_24;} Numeric::tmp_add_type_24 tmp_add_func_24(){return 0;}; namespace Numerics{typedef int tmp_add_type_25;} Numerics::tmp_add_type_25 tmp_add_func_25(){return 0;}; namespace ReloadModule{typedef int tmp_add_type_26;} ReloadModule::tmp_add_type_26 tmp_add_func_26(){return 0;}; namespace ServerProtocol{typedef int tmp_add_type_27;} ServerProtocol::tmp_add_type_27 tmp_add_func_27(){return 0;}; namespace SQL{typedef int tmp_add_type_28;} SQL::tmp_add_type_28 tmp_add_func_28(){return 0;}; namespace Stats{typedef int tmp_add_type_29;} Stats::tmp_add_type_29 tmp_add_func_29(){return 0;}; namespace stdalgo{typedef int tmp_add_type_30;} stdalgo::tmp_add_type_30 tmp_add_func_30(){return 0;}; namespace stdalgo{namespace string{typedef int tmp_add_type_31;}} stdalgo::string::tmp_add_type_31 tmp_add_func_31(){return 0;}; namespace stdalgo{namespace vector{typedef int tmp_add_type_32;}} stdalgo::vector::tmp_add_type_32 tmp_add_func_32(){return 0;}; namespace WebIRC{typedef int tmp_add_type_33;} WebIRC::tmp_add_type_33 tmp_add_func_33(){return 0;}; namespace Who{typedef int tmp_add_type_34;} Who::tmp_add_type_34 tmp_add_func_34(){return 0;}; namespace Whois{typedef int tmp_add_type_35;} Whois::tmp_add_type_35 tmp_add_func_35(){return 0;}; // add classes AccountEventListener* tmp_add_class_0; ActionBase* tmp_add_class_1; ActionList* tmp_add_class_2; BufferedSocket* tmp_add_class_3; ChanModeReference* tmp_add_class_4; Channel* tmp_add_class_5; Command* tmp_add_class_6; CommandBase* tmp_add_class_7; CommandLineConf* tmp_add_class_8; CommandParser* tmp_add_class_9; ConfigReaderThread* tmp_add_class_10; ConfigStatus* tmp_add_class_11; ConfigTag* tmp_add_class_12; ConnectClass* tmp_add_class_13; CoreException* tmp_add_class_14; CullList* tmp_add_class_15; CullResult* tmp_add_class_16; DLLManager* tmp_add_class_17; DataProvider* tmp_add_class_18; ELine* tmp_add_class_19; ElementComp* tmp_add_class_20; EventHandler* tmp_add_class_21; Extensible* tmp_add_class_22; ExtensionItem* tmp_add_class_23; ExtensionManager* tmp_add_class_24; FailedPort* tmp_add_class_25; FakeUser* tmp_add_class_26; FileLogStream* tmp_add_class_27; FileReader* tmp_add_class_28; FileSystem* tmp_add_class_29; FileWriter* tmp_add_class_30; GLine* tmp_add_class_31; HTTPACLEventListener* tmp_add_class_32; HTTPDocumentResponse* tmp_add_class_33; HTTPHeaders* tmp_add_class_34; HTTPQueryParameters* tmp_add_class_35; HTTPRequest* tmp_add_class_36; HTTPRequestEventListener* tmp_add_class_37; HTTPRequestURI* tmp_add_class_38; HTTPdAPI* tmp_add_class_39; HTTPdAPIBase* tmp_add_class_40; HashProvider* tmp_add_class_41; IOHook* tmp_add_class_42; IOHookMiddle* tmp_add_class_43; IOHookProvider* tmp_add_class_44; ISupportManager* tmp_add_class_45; InspIRCd* tmp_add_class_46; KLine* tmp_add_class_47; LDAPAttributes* tmp_add_class_48; LDAPException* tmp_add_class_49; LDAPInterface* tmp_add_class_50; LDAPModification* tmp_add_class_51; LDAPProvider* tmp_add_class_52; LDAPResult* tmp_add_class_53; ListModeBase* tmp_add_class_54; ListenSocket* tmp_add_class_55; LocalIntExt* tmp_add_class_56; LocalStringExt* tmp_add_class_57; LocalUser* tmp_add_class_58; LogManager* tmp_add_class_59; LogStream* tmp_add_class_60; MessageDetails* tmp_add_class_61; MessageTarget* tmp_add_class_62; ModResult* tmp_add_class_63; ModeHandler* tmp_add_class_64; ModeWatcher* tmp_add_class_65; Module* tmp_add_class_66; ModuleException* tmp_add_class_67; ModuleManager* tmp_add_class_68; Mutex* tmp_add_class_69; OperInfo* tmp_add_class_70; ParamModeBase* tmp_add_class_71; ParseStack* tmp_add_class_72; PrefixMode* tmp_add_class_73; ProtocolInterface* tmp_add_class_74; ProtocolServer* tmp_add_class_75; QLine* tmp_add_class_76; QueuedThread* tmp_add_class_77; Regex* tmp_add_class_78; RegexException* tmp_add_class_79; RegexFactory* tmp_add_class_80; RemoteUser* tmp_add_class_81; RouteDescriptor* tmp_add_class_82; SASLEventListener* tmp_add_class_83; SSLClientCert* tmp_add_class_84; SSLIOHook* tmp_add_class_85; SSLIOHookProvider* tmp_add_class_86; Serializable* tmp_add_class_87; Server* tmp_add_class_88; ServerConfig* tmp_add_class_89; ServerEventListener* tmp_add_class_90; ServerLimits* tmp_add_class_91; ServiceProvider* tmp_add_class_92; Shun* tmp_add_class_93; SimpleChannelModeHandler* tmp_add_class_94; SimpleUserModeHandler* tmp_add_class_95; Snomask* tmp_add_class_96; SnomaskManager* tmp_add_class_97; SocketEngine* tmp_add_class_98; SocketThread* tmp_add_class_99; SocketTimeout* tmp_add_class_100; SplitCommand* tmp_add_class_101; StreamSocket* tmp_add_class_102; StringExtItem* tmp_add_class_103; Thread* tmp_add_class_104; ThreadEngine* tmp_add_class_105; ThreadQueueData* tmp_add_class_106; ThreadSignalData* tmp_add_class_107; Timer* tmp_add_class_108; TimerManager* tmp_add_class_109; TokenList* tmp_add_class_110; UIDGenerator* tmp_add_class_111; User* tmp_add_class_112; UserCertificateAPI* tmp_add_class_113; UserCertificateAPIBase* tmp_add_class_114; UserIOHandler* tmp_add_class_115; UserManager* tmp_add_class_116; UserModeReference* tmp_add_class_117; Version* tmp_add_class_118; XLine* tmp_add_class_119; XLineFactory* tmp_add_class_120; XLineManager* tmp_add_class_121; ZLine* tmp_add_class_122; _G_fpos64_t* tmp_add_class_123; _G_fpos_t* tmp_add_class_124; _IO_cookie_io_functions_t* tmp_add_class_125; addrinfo* tmp_add_class_126; classbase* tmp_add_class_127; cmsghdr* tmp_add_class_128; dynamic_reference_base* tmp_add_class_129; f_owner_ex* tmp_add_class_130; file_handle* tmp_add_class_131; flock64* tmp_add_class_132; gaicb* tmp_add_class_133; group_filter* tmp_add_class_134; group_req* tmp_add_class_135; group_source_req* tmp_add_class_136; hostent* tmp_add_class_137; in6_addr* tmp_add_class_138; in6_pktinfo* tmp_add_class_139; in_addr* tmp_add_class_140; in_pktinfo* tmp_add_class_141; interfacebase* tmp_add_class_142; iovec* tmp_add_class_143; ip6_mtuinfo* tmp_add_class_144; ip_mreq* tmp_add_class_145; ip_mreq_source* tmp_add_class_146; ip_mreqn* tmp_add_class_147; ip_msfilter* tmp_add_class_148; ip_opts* tmp_add_class_149; ipv6_mreq* tmp_add_class_150; itimerval* tmp_add_class_151; linger* tmp_add_class_152; mmsghdr* tmp_add_class_153; msghdr* tmp_add_class_154; netent* tmp_add_class_155; osockaddr* tmp_add_class_156; protoent* tmp_add_class_157; refcountbase* tmp_add_class_158; rlimit64* tmp_add_class_159; rpcent* tmp_add_class_160; servent* tmp_add_class_161; serverstats* tmp_add_class_162; sockaddr* tmp_add_class_163; sockaddr_in* tmp_add_class_164; sockaddr_in6* tmp_add_class_165; sockaddr_storage* tmp_add_class_166; sockaddr_un* tmp_add_class_167; ssl_cert* tmp_add_class_168; statx_timestamp* tmp_add_class_169; ucontext_t* tmp_add_class_170; ucred* tmp_add_class_171; usecountbase* tmp_add_class_172; The GCC parameters: gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/XDrPsg2cTs/dump1.h" -I/usr/include/inspircd In file included from /tmp/XDrPsg2cTs/dump1.h:13: /usr/include/inspircd/aligned_storage.h:30:26: error: ‘TR1NS’ has not been declared 30 | mutable typename TR1NS::aligned_storage::value>::type data; | ^~~~~ /usr/include/inspircd/aligned_storage.h:30:48: error: expected unqualified-id before ‘<’ token 30 | mutable typename TR1NS::aligned_storage::value>::type data; | ^ /usr/include/inspircd/aligned_storage.h: In member function ‘T* insp::aligned_storage::operator->() const’: /usr/include/inspircd/aligned_storage.h:43:60: error: ‘data’ was not declared in this scope 43 | return static_cast(static_cast(&data)); | ^~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:14: /usr/include/inspircd/bancache.h: At global scope: /usr/include/inspircd/bancache.h:35:18: error: variable ‘CoreExport BanCacheHit’ has initializer but incomplete type 35 | class CoreExport BanCacheHit | ^~~~~~~~~~~ /usr/include/inspircd/bancache.h:37:2: error: expected primary-expression before ‘public’ 37 | public: | ^~~~~~ /usr/include/inspircd/bancache.h:37:2: error: expected ‘}’ before ‘public’ /usr/include/inspircd/bancache.h:36:1: note: to match this ‘{’ 36 | { | ^ /usr/include/inspircd/bancache.h:37:2: error: expected ‘,’ or ‘;’ before ‘public’ 37 | public: | ^~~~~~ /usr/include/inspircd/bancache.h:43:14: error: ‘string’ in namespace ‘std’ does not name a type 43 | std::string Reason; | ^~~~~~ /usr/include/inspircd/bancache.h:1:1: note: ‘std::string’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | /* /usr/include/inspircd/bancache.h:48:32: error: ‘string’ in namespace ‘std’ does not name a type 48 | BanCacheHit(const std::string& type, const std::string& reason, time_t seconds); | ^~~~~~ /usr/include/inspircd/bancache.h:48:27: note: ‘std::string’ is defined in header ‘’; did you forget to ‘#include ’? 48 | BanCacheHit(const std::string& type, const std::string& reason, time_t seconds); | ^~~ /usr/include/inspircd/bancache.h:48:57: error: ‘string’ in namespace ‘std’ does not name a type 48 | BanCacheHit(const std::string& type, const std::string& reason, time_t seconds); | ^~~~~~ /usr/include/inspircd/bancache.h:48:52: note: ‘std::string’ is defined in header ‘’; did you forget to ‘#include ’? 48 | BanCacheHit(const std::string& type, const std::string& reason, time_t seconds); | ^~~ /usr/include/inspircd/bancache.h:48:88: error: expected constructor, destructor, or type conversion before ‘;’ token 48 | BanCacheHit(const std::string& type, const std::string& reason, time_t seconds); | ^ /usr/include/inspircd/bancache.h:50:27: error: non-member function ‘bool IsPositive()’ cannot have cv-qualifier 50 | bool IsPositive() const { return (!Reason.empty()); } | ^~~~~ /usr/include/inspircd/bancache.h: In function ‘bool IsPositive()’: /usr/include/inspircd/bancache.h:50:44: error: ‘Reason’ was not declared in this scope 50 | bool IsPositive() const { return (!Reason.empty()); } | ^~~~~~ /usr/include/inspircd/bancache.h: At global scope: /usr/include/inspircd/bancache.h:51:1: error: expected declaration before ‘}’ token 51 | }; | ^ /usr/include/inspircd/bancache.h:55:18: error: variable ‘CoreExport BanCacheManager’ has initializer but incomplete type 55 | class CoreExport BanCacheManager | ^~~~~~~~~~~~~~~ /usr/include/inspircd/bancache.h:59:9: error: expected primary-expression before ‘typedef’ 59 | typedef TR1NS::unordered_map > BanCacheHash; | ^~~~~~~ /usr/include/inspircd/bancache.h:59:9: error: expected ‘}’ before ‘typedef’ /usr/include/inspircd/bancache.h:56:1: note: to match this ‘{’ 56 | { | ^ /usr/include/inspircd/bancache.h:59:9: error: expected ‘,’ or ‘;’ before ‘typedef’ 59 | typedef TR1NS::unordered_map > BanCacheHash; | ^~~~~~~ /usr/include/inspircd/bancache.h:61:9: error: ‘BanCacheHash’ does not name a type 61 | BanCacheHash BanHash; | ^~~~~~~~~~~~ /usr/include/inspircd/bancache.h:62:30: error: ‘BanCacheHash’ has not been declared 62 | bool RemoveIfExpired(BanCacheHash::iterator& it); | ^~~~~~~~~~~~ /usr/include/inspircd/bancache.h:62:54: error: ‘it’ was not declared in this scope; did you mean ‘int’? 62 | bool RemoveIfExpired(BanCacheHash::iterator& it); | ^~ | int /usr/include/inspircd/bancache.h:64:2: error: expected unqualified-id before ‘public’ 64 | public: | ^~~~~~ /usr/include/inspircd/bancache.h:73:9: error: ‘BanCacheHit’ does not name a type 73 | BanCacheHit *GetHit(const std::string &ip); | ^~~~~~~~~~~ /usr/include/inspircd/bancache.h:79:39: error: ‘string’ in namespace ‘std’ does not name a type 79 | void RemoveEntries(const std::string& type, bool positive); | ^~~~~~ /usr/include/inspircd/bancache.h:79:34: note: ‘std::string’ is defined in header ‘’; did you forget to ‘#include ’? 79 | void RemoveEntries(const std::string& type, bool positive); | ^~~ /usr/include/inspircd/bancache.h:81:25: error: expected class-name before ‘(’ token 81 | ~BanCacheManager(); | ^ /usr/include/inspircd/bancache.h:82:1: error: expected declaration before ‘}’ token 82 | }; | ^ In file included from /usr/include/inspircd/membership.h:25, from /usr/include/inspircd/channels.h:28, from /tmp/XDrPsg2cTs/dump1.h:16: /usr/include/inspircd/convto.h: In function ‘std::string ConvToStr(const T&)’: /usr/include/inspircd/convto.h:86:27: error: ‘tmp’ has incomplete type 86 | std::stringstream tmp; | ^~~ In file included from /usr/include/c++/12/bits/localefwd.h:41, from /usr/include/c++/12/string:43, from /usr/include/inspircd/base.h:32, from /tmp/XDrPsg2cTs/dump1.h:15: /usr/include/c++/12/iosfwd:108:11: note: declaration of ‘std::stringstream’ {aka ‘class std::__cxx11::basic_stringstream’} 108 | class basic_stringstream; | ^~~~~~~~~~~~~~~~~~ /usr/include/inspircd/membership.h: At global scope: /usr/include/inspircd/membership.h:34:48: error: expected class-name before ‘,’ token 34 | class CoreExport Membership : public Extensible, public insp::intrusive_list_node | ^ /usr/include/inspircd/membership.h:34:82: error: expected template-name before ‘<’ token 34 | class CoreExport Membership : public Extensible, public insp::intrusive_list_node | ^ /usr/include/inspircd/membership.h:34:82: error: expected ‘{’ before ‘<’ token /usr/include/inspircd/membership.h:34:82: error: expected unqualified-id before ‘<’ token In file included from /usr/include/inspircd/mode.h:29, from /usr/include/inspircd/channels.h:29: /usr/include/inspircd/ctables.h:86:9: error: ‘Server’ does not name a type 86 | Server* server; | ^~~~~~ /usr/include/inspircd/ctables.h:93:38: error: ‘Server’ has not been declared 93 | RouteDescriptor(RouteType t, Server* srv) | ^~~~~~ /usr/include/inspircd/ctables.h: In constructor ‘RouteDescriptor::RouteDescriptor(RouteType, const std::string&)’: /usr/include/inspircd/ctables.h:91:43: error: class ‘RouteDescriptor’ does not have any field named ‘server’ 91 | : type(t), serverdest(d), server(NULL) { } | ^~~~~~ /usr/include/inspircd/ctables.h: In constructor ‘RouteDescriptor::RouteDescriptor(RouteType, int*)’: /usr/include/inspircd/ctables.h:94:28: error: class ‘RouteDescriptor’ does not have any field named ‘server’ 94 | : type(t), server(srv) { } | ^~~~~~ /usr/include/inspircd/ctables.h: At global scope: /usr/include/inspircd/ctables.h:121:17: error: ‘ClientProtocol’ does not name a type 121 | ClientProtocol::TagMap tags; | ^~~~~~~~~~~~~~ /usr/include/inspircd/ctables.h:128:73: error: ‘ClientProtocol’ does not name a type 128 | Params(const std::vector& paramsref, const ClientProtocol::TagMap& tagsref) | ^~~~~~~~~~~~~~ /usr/include/inspircd/ctables.h:128:95: error: expected unqualified-id before ‘&’ token 128 | Params(const std::vector& paramsref, const ClientProtocol::TagMap& tagsref) | ^ /usr/include/inspircd/ctables.h:128:95: error: expected ‘)’ before ‘&’ token 128 | Params(const std::vector& paramsref, const ClientProtocol::TagMap& tagsref) | ~ ^ | ) /usr/include/inspircd/ctables.h:128:95: error: constructors may not be ref-qualified /usr/include/inspircd/ctables.h:128:95: error: expected ‘;’ at end of member declaration 128 | Params(const std::vector& paramsref, const ClientProtocol::TagMap& tagsref) | ^ | ; /usr/include/inspircd/ctables.h:128:97: error: ‘tagsref’ does not name a type 128 | Params(const std::vector& paramsref, const ClientProtocol::TagMap& tagsref) | ^~~~~~~ /usr/include/inspircd/ctables.h:148:23: error: ‘ClientProtocol’ does not name a type 148 | const ClientProtocol::TagMap& GetTags() const { return tags; } | ^~~~~~~~~~~~~~ /usr/include/inspircd/ctables.h:149:17: error: ‘ClientProtocol’ does not name a type 149 | ClientProtocol::TagMap& GetTags() { return tags; } | ^~~~~~~~~~~~~~ /usr/include/inspircd/ctables.h:185:44: error: ‘User’ has not been declared 185 | virtual RouteDescriptor GetRouting(User* user, const CommandBase::Params& parameters); | ^~~~ /usr/include/inspircd/ctables.h:236:34: error: ‘User’ has not been declared 236 | virtual CmdResult Handle(User* user, const Params& parameters) = 0; | ^~~~ /usr/include/inspircd/ctables.h:245:46: error: ‘LocalUser’ has not been declared 245 | virtual void TellNotEnoughParameters(LocalUser* user, const Params& parameters); | ^~~~~~~~~ /usr/include/inspircd/ctables.h:251:40: error: ‘LocalUser’ has not been declared 251 | virtual void TellNotRegistered(LocalUser* user, const Params& parameters); | ^~~~~~~~~ /usr/include/inspircd/ctables.h:267:26: error: ‘User’ has not been declared 267 | CmdResult Handle(User* user, const Params& parameters) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/ctables.h:275:39: error: ‘LocalUser’ has not been declared 275 | virtual CmdResult HandleLocal(LocalUser* user, const Params& parameters); | ^~~~~~~~~ /usr/include/inspircd/ctables.h:283:40: error: ‘RemoteUser’ has not been declared 283 | virtual CmdResult HandleRemote(RemoteUser* user, const Params& parameters); | ^~~~~~~~~~ /usr/include/inspircd/ctables.h:291:40: error: ‘FakeUser’ has not been declared 291 | virtual CmdResult HandleServer(FakeUser* user, const Params& parameters); | ^~~~~~~~ In file included from /usr/include/inspircd/mode.h:30: /usr/include/inspircd/modechange.h:34:9: error: ‘ModeHandler’ does not name a type 34 | ModeHandler* mh; | ^~~~~~~~~~~ /usr/include/inspircd/modechange.h:42:27: error: expected ‘)’ before ‘*’ token 42 | Change(ModeHandler* handler, bool add, const std::string& parameter) | ~ ^ | ) /usr/include/inspircd/modechange.h:79:19: error: ‘ModeHandler’ has not been declared 79 | void push(ModeHandler* mh, bool adding, const std::string& param = std::string()) | ^~~~~~~~~~~ /usr/include/inspircd/modechange.h:88:23: error: ‘ModeHandler’ has not been declared 88 | void push_add(ModeHandler* mh, const std::string& param = std::string()) | ^~~~~~~~~~~ /usr/include/inspircd/modechange.h:97:26: error: ‘ModeHandler’ has not been declared 97 | void push_remove(ModeHandler* mh, const std::string& param = std::string()) | ^~~~~~~~~~~ /usr/include/inspircd/modechange.h: In member function ‘void Modes::ChangeList::push(int*, bool, const std::string&)’: /usr/include/inspircd/modechange.h:81:57: error: no matching function for call to ‘Modes::Change::Change(int*&, bool&, const std::string&)’ 81 | items.push_back(Change(mh, adding, param)); | ^ /usr/include/inspircd/modechange.h:31:15: note: candidate: ‘Modes::Change::Change()’ 31 | struct Modes::Change | ^~~~~~ /usr/include/inspircd/modechange.h:31:15: note: candidate expects 0 arguments, 3 provided /usr/include/inspircd/modechange.h:31:15: note: candidate: ‘Modes::Change::Change(const Modes::Change&)’ /usr/include/inspircd/modechange.h:31:15: note: candidate expects 1 argument, 3 provided /usr/include/inspircd/modechange.h:31:15: note: candidate: ‘Modes::Change::Change(Modes::Change&&)’ /usr/include/inspircd/modechange.h:31:15: note: candidate expects 1 argument, 3 provided /usr/include/inspircd/mode.h: At global scope: /usr/include/inspircd/mode.h:252:52: error: ‘User’ does not name a type 252 | virtual std::string GetUserParameter(const User* user) const; | ^~~~ /usr/include/inspircd/mode.h:262:17: error: ‘ModResult’ does not name a type; did you mean ‘CmdResult’? 262 | virtual ModResult AccessCheck(User* source, Channel* channel, std::string ¶meter, bool adding); | ^~~~~~~~~ | CmdResult /usr/include/inspircd/mode.h:276:41: error: ‘User’ has not been declared 276 | virtual ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding); /* Can change the mode parameter as its a ref */ | ^~~~ /usr/include/inspircd/mode.h:276:55: error: ‘User’ has not been declared 276 | virtual ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding); /* Can change the mode parameter as its a ref */ | ^~~~ /usr/include/inspircd/mode.h:276:67: error: ‘Channel’ has not been declared 276 | virtual ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string ¶meter, bool adding); /* Can change the mode parameter as its a ref */ | ^~~~~~~ /usr/include/inspircd/mode.h:284:34: error: ‘User’ has not been declared 284 | virtual void DisplayList(User* user, Channel* channel); | ^~~~ /usr/include/inspircd/mode.h:284:46: error: ‘Channel’ has not been declared 284 | virtual void DisplayList(User* user, Channel* channel); | ^~~~~~~ /usr/include/inspircd/mode.h:292:41: error: ‘User’ has not been declared 292 | virtual void OnParameterMissing(User* user, User* dest, Channel* channel); | ^~~~ /usr/include/inspircd/mode.h:292:53: error: ‘User’ has not been declared 292 | virtual void OnParameterMissing(User* user, User* dest, Channel* channel); | ^~~~ /usr/include/inspircd/mode.h:292:65: error: ‘Channel’ has not been declared 292 | virtual void OnParameterMissing(User* user, User* dest, Channel* channel); | ^~~~~~~ /usr/include/inspircd/mode.h:300:41: error: ‘User’ has not been declared 300 | virtual void OnParameterInvalid(User* user, Channel* targetchannel, User* targetuser, const std::string& parameter); | ^~~~ /usr/include/inspircd/mode.h:300:53: error: ‘Channel’ has not been declared 300 | virtual void OnParameterInvalid(User* user, Channel* targetchannel, User* targetuser, const std::string& parameter); | ^~~~~~~ /usr/include/inspircd/mode.h:300:77: error: ‘User’ has not been declared 300 | virtual void OnParameterInvalid(User* user, Channel* targetchannel, User* targetuser, const std::string& parameter); | ^~~~ /usr/include/inspircd/mode.h:308:39: error: ‘User’ has not been declared 308 | virtual void DisplayEmptyList(User* user, Channel* channel); | ^~~~ /usr/include/inspircd/mode.h:308:51: error: ‘Channel’ has not been declared 308 | virtual void DisplayEmptyList(User* user, Channel* channel); | ^~~~~~~ /usr/include/inspircd/mode.h:320:98: error: ‘Channel’ has not been declared 320 | virtual bool ResolveModeConflict(std::string &their_param, const std::string &our_param, Channel* channel); | ^~~~~~~ /usr/include/inspircd/mode.h:327:25: error: ‘User’ has not been declared 327 | void RemoveMode(User* user); | ^~~~ /usr/include/inspircd/mode.h:339:33: error: ‘Channel’ has not been declared 339 | virtual void RemoveMode(Channel* channel, Modes::ChangeList& changelist); | ^~~~~~~ /usr/include/inspircd/mode.h:404:9: error: ‘ModResult’ does not name a type; did you mean ‘CmdResult’? 404 | ModResult AccessCheck(User* source, Channel* channel, std::string ¶meter, bool adding) CXX11_OVERRIDE; | ^~~~~~~~~ | CmdResult /usr/include/inspircd/mode.h:419:33: error: ‘User’ has not been declared 419 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& param, bool adding) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/mode.h:419:47: error: ‘User’ has not been declared 419 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& param, bool adding) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/mode.h:419:59: error: ‘Channel’ has not been declared 419 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& param, bool adding) CXX11_OVERRIDE; | ^~~~~~~ /usr/include/inspircd/mode.h:435:25: error: ‘Channel’ has not been declared 435 | void RemoveMode(Channel* channel, Modes::ChangeList& changelist) CXX11_OVERRIDE; | ^~~~~~~ /usr/include/inspircd/mode.h:474:33: error: ‘User’ has not been declared 474 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& parameter, bool adding) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/mode.h:474:47: error: ‘User’ has not been declared 474 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& parameter, bool adding) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/mode.h:474:59: error: ‘Channel’ has not been declared 474 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& parameter, bool adding) CXX11_OVERRIDE; | ^~~~~~~ /usr/include/inspircd/mode.h:491:33: error: ‘User’ has not been declared 491 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& parameter, bool adding) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/mode.h:491:47: error: ‘User’ has not been declared 491 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& parameter, bool adding) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/mode.h:491:59: error: ‘Channel’ has not been declared 491 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& parameter, bool adding) CXX11_OVERRIDE; | ^~~~~~~ /usr/include/inspircd/mode.h:548:33: error: ‘User’ has not been declared 548 | virtual bool BeforeMode(User* source, User* dest, Channel* channel, std::string& parameter, bool adding); | ^~~~ /usr/include/inspircd/mode.h:548:47: error: ‘User’ has not been declared 548 | virtual bool BeforeMode(User* source, User* dest, Channel* channel, std::string& parameter, bool adding); | ^~~~ /usr/include/inspircd/mode.h:548:59: error: ‘Channel’ has not been declared 548 | virtual bool BeforeMode(User* source, User* dest, Channel* channel, std::string& parameter, bool adding); | ^~~~~~~ /usr/include/inspircd/mode.h:558:32: error: ‘User’ has not been declared 558 | virtual void AfterMode(User* source, User* dest, Channel* channel, const std::string& parameter, bool adding); | ^~~~ /usr/include/inspircd/mode.h:558:46: error: ‘User’ has not been declared 558 | virtual void AfterMode(User* source, User* dest, Channel* channel, const std::string& parameter, bool adding); | ^~~~ /usr/include/inspircd/mode.h:558:58: error: ‘Channel’ has not been declared 558 | virtual void AfterMode(User* source, User* dest, Channel* channel, const std::string& parameter, bool adding); | ^~~~~~~ /usr/include/inspircd/mode.h:566:47: error: expected template-name before ‘<’ token 566 | class CoreExport ModeParser : public fakederef | ^ /usr/include/inspircd/mode.h:566:47: error: expected ‘{’ before ‘<’ token /usr/include/inspircd/mode.h:566:47: error: expected unqualified-id before ‘<’ token In file included from /usr/include/inspircd/channels.h:30: /usr/include/inspircd/parammode.h:26:38: error: ‘User’ has not been declared 26 | virtual void OnUnsetInternal(User* source, Channel* chan) = 0; | ^~~~ /usr/include/inspircd/parammode.h:26:52: error: ‘Channel’ has not been declared 26 | virtual void OnUnsetInternal(User* source, Channel* chan) = 0; | ^~~~~~~ /usr/include/inspircd/parammode.h:32:33: error: ‘User’ has not been declared 32 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& param, bool adding) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/parammode.h:32:47: error: ‘User’ has not been declared 32 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& param, bool adding) CXX11_OVERRIDE; | ^~~~ /usr/include/inspircd/parammode.h:32:59: error: ‘Channel’ has not been declared 32 | ModeAction OnModeChange(User* source, User* dest, Channel* channel, std::string& param, bool adding) CXX11_OVERRIDE; | ^~~~~~~ /usr/include/inspircd/parammode.h:36:30: error: ‘User’ has not been declared 36 | virtual void OnUnset(User* source, Channel* chan) { } | ^~~~ /usr/include/inspircd/parammode.h:36:44: error: ‘Channel’ has not been declared 36 | virtual void OnUnset(User* source, Channel* chan) { } | ^~~~~~~ /usr/include/inspircd/parammode.h:37:34: error: ‘User’ has not been declared 37 | virtual ModeAction OnSet(User* source, Channel* chan, std::string& param) = 0; | ^~~~ /usr/include/inspircd/parammode.h:37:48: error: ‘Channel’ has not been declared 37 | virtual ModeAction OnSet(User* source, Channel* chan, std::string& param) = 0; | ^~~~~~~ /usr/include/inspircd/parammode.h:38:35: error: ‘Channel’ has not been declared 38 | virtual void GetParameter(Channel* chan, std::string& out) = 0; | ^~~~~~~ /usr/include/inspircd/parammode.h:65:30: error: ‘User’ has not been declared 65 | void OnUnsetInternal(User* source, Channel* chan) CXX11_OVERRIDE | ^~~~ /usr/include/inspircd/parammode.h:65:44: error: ‘Channel’ has not been declared 65 | void OnUnsetInternal(User* source, Channel* chan) CXX11_OVERRIDE | ^~~~~~~ /usr/include/inspircd/parammode.h:71:27: error: ‘Channel’ has not been declared 71 | void GetParameter(Channel* chan, std::string& out) CXX11_OVERRIDE | ^~~~~~~ /usr/include/inspircd/parammode.h: In constructor ‘ParamMode::ParamMode(Module*, const std::string&, char, ParamSpec)’: /usr/include/inspircd/parammode.h:61:44: error: ‘ExtensionItem’ has not been declared 61 | , ext("parammode_" + Name, ExtensionItem::EXT_CHANNEL, Creator) | ^~~~~~~~~~~~~ /usr/include/inspircd/channels.h: At global scope: /usr/include/inspircd/channels.h:41:1: error: expected class-name before ‘{’ token 41 | { | ^ /usr/include/inspircd/channels.h:45:22: error: ‘map’ in namespace ‘std’ does not name a template type 45 | typedef std::map > MemberMap; | ^~~ /usr/include/inspircd/channels.h:31:1: note: ‘std::map’ is defined in header ‘’; did you forget to ‘#include ’? 30 | #include "parammode.h" +++ |+#include 31 | /usr/include/inspircd/channels.h:56:14: error: ‘bitset’ in namespace ‘std’ does not name a template type 56 | std::bitset modes; | ^~~~~~ /usr/include/inspircd/channels.h:31:1: note: ‘std::bitset’ is defined in header ‘’; did you forget to ‘#include ’? 30 | #include "parammode.h" +++ |+#include 31 | /usr/include/inspircd/channels.h:65:28: error: ‘MemberMap’ does not name a type; did you mean ‘Membership’? 65 | void DelUser(const MemberMap::iterator& membiter); | ^~~~~~~~~ | Membership /usr/include/inspircd/channels.h:65:47: error: expected unqualified-id before ‘&’ token 65 | void DelUser(const MemberMap::iterator& membiter); | ^ /usr/include/inspircd/channels.h:65:47: error: expected ‘)’ before ‘&’ token 65 | void DelUser(const MemberMap::iterator& membiter); | ~ ^ | ) /usr/include/inspircd/channels.h:65:47: error: expected ‘;’ at end of member declaration 65 | void DelUser(const MemberMap::iterator& membiter); | ^ | ; /usr/include/inspircd/channels.h:65:49: error: ‘membiter’ does not name a type 65 | void DelUser(const MemberMap::iterator& membiter); | ^~~~~~~~ /usr/include/inspircd/channels.h:96:9: error: ‘MemberMap’ does not name a type; did you mean ‘Membership’? 96 | MemberMap userlist; | ^~~~~~~~~ | Membership /usr/include/inspircd/channels.h:125:24: error: ‘ChanModeReference’ has not been declared 125 | bool IsModeSet(ChanModeReference& mode); | ^~~~~~~~~~~~~~~~~ /usr/include/inspircd/channels.h:138:38: error: ‘ChanModeReference’ has not been declared 138 | std::string GetModeParameter(ChanModeReference& mode); | ^~~~~~~~~~~~~~~~~ /usr/include/inspircd/channels.h:148:23: error: ‘User’ has not been declared 148 | void SetTopic(User* user, const std::string& topic, time_t topicts, const std::string* setter = NULL); | ^~~~ /usr/include/inspircd/channels.h:164:29: error: ‘User’ has not been declared 164 | Membership* AddUser(User* user); | ^~~~ /usr/include/inspircd/channels.h:169:22: error: ‘User’ has not been declared 169 | void DelUser(User* user); | ^~~~ /usr/include/inspircd/channels.h:180:15: error: ‘MemberMap’ does not name a type; did you mean ‘Membership’? 180 | const MemberMap& GetUsers() const { return userlist; } | ^~~~~~~~~ | Membership /usr/include/inspircd/channels.h:186:22: error: ‘User’ has not been declared 186 | bool HasUser(User* user); | ^~~~ /usr/include/inspircd/channels.h:188:29: error: ‘User’ has not been declared 188 | Membership* GetUser(User* user); | ^~~~ /usr/include/inspircd/channels.h:195:23: error: ‘User’ has not been declared 195 | void KickUser(User* src, const MemberMap::iterator& victimiter, const std::string& reason); | ^~~~ /usr/include/inspircd/channels.h:195:40: error: ‘MemberMap’ does not name a type; did you mean ‘Membership’? 195 | void KickUser(User* src, const MemberMap::iterator& victimiter, const std::string& reason); | ^~~~~~~~~ | Membership /usr/include/inspircd/channels.h:195:59: error: expected unqualified-id before ‘&’ token 195 | void KickUser(User* src, const MemberMap::iterator& victimiter, const std::string& reason); | ^ /usr/include/inspircd/channels.h:195:59: error: expected ‘)’ before ‘&’ token 195 | void KickUser(User* src, const MemberMap::iterator& victimiter, const std::string& reason); | ~ ^ | ) /usr/include/inspircd/channels.h:195:59: error: expected ‘;’ at end of member declaration 195 | void KickUser(User* src, const MemberMap::iterator& victimiter, const std::string& reason); | ^ | ; /usr/include/inspircd/channels.h:195:61: error: ‘victimiter’ does not name a type 195 | void KickUser(User* src, const MemberMap::iterator& victimiter, const std::string& reason); | ^~~~~~~~~~ /usr/include/inspircd/channels.h:202:23: error: ‘User’ has not been declared 202 | void KickUser(User* src, User* user, const std::string& reason) | ^~~~ /usr/include/inspircd/channels.h:202:34: error: ‘User’ has not been declared 202 | void KickUser(User* src, User* user, const std::string& reason) | ^~~~ /usr/include/inspircd/channels.h:215:23: error: ‘User’ has not been declared 215 | bool PartUser(User* user, std::string& reason); | ^~~~ /usr/include/inspircd/channels.h:226:34: error: ‘LocalUser’ has not been declared 226 | static Channel* JoinUser(LocalUser* user, std::string channame, bool override = false, const std::string& key = ""); | ^~~~~~~~~ /usr/include/inspircd/channels.h:235:31: error: ‘User’ has not been declared 235 | Membership* ForceJoin(User* user, const std::string* privs = NULL, bool bursting = false, bool created_by_local = false); | ^~~~ /usr/include/inspircd/channels.h:242:20: error: ‘ClientProtocol’ has not been declared 242 | void Write(ClientProtocol::Event& protoev, char status = 0, const CUList& except_list = CUList()); | ^~~~~~~~~~~~~~ /usr/include/inspircd/channels.h:242:41: error: expected ‘,’ or ‘...’ before ‘&’ token 242 | void Write(ClientProtocol::Event& protoev, char status = 0, const CUList& except_list = CUList()); | ^ /usr/include/inspircd/channels.h:250:20: error: ‘ClientProtocol’ has not been declared 250 | void Write(ClientProtocol::EventProvider& protoevprov, ClientProtocol::Message& msg, char status = 0, const CUList& except_list = CUList()); | ^~~~~~~~~~~~~~ /usr/include/inspircd/channels.h:250:49: error: expected ‘,’ or ‘...’ before ‘&’ token 250 | void Write(ClientProtocol::EventProvider& protoevprov, ClientProtocol::Message& msg, char status = 0, const CUList& except_list = CUList()); | ^ /usr/include/inspircd/channels.h:250:14: error: ‘void Channel::Write(int)’ cannot be overloaded with ‘void Channel::Write(int)’ 250 | void Write(ClientProtocol::EventProvider& protoevprov, ClientProtocol::Message& msg, char status = 0, const CUList& except_list = CUList()); | ^~~~~ /usr/include/inspircd/channels.h:242:14: note: previous declaration ‘void Channel::Write(int)’ 242 | void Write(ClientProtocol::Event& protoev, char status = 0, const CUList& except_list = CUList()); | ^~~~~ /usr/include/inspircd/channels.h:270:37: error: ‘User’ has not been declared 270 | unsigned int GetPrefixValue(User* user); | ^~~~ /usr/include/inspircd/channels.h:276:23: error: ‘User’ has not been declared 276 | bool IsBanned(User* user); | ^~~~ /usr/include/inspircd/channels.h:280:23: error: ‘User’ has not been declared 280 | bool CheckBan(User* user, const std::string& banmask); | ^~~~ /usr/include/inspircd/channels.h:284:9: error: ‘ModResult’ does not name a type; did you mean ‘CmdResult’? 284 | ModResult GetExtBanStatus(User *u, char type); | ^~~~~~~~~ | CmdResult /usr/include/inspircd/channels.h: In member function ‘bool Channel::IsModeSet(ModeHandler*)’: /usr/include/inspircd/channels.h:123:83: error: incomplete type ‘ModeParser’ used in nested name specifier 123 | bool IsModeSet(ModeHandler* mode) { return ((mode->GetId() != ModeParser::MODEID_MAX) && (modes[mode->GetId()])); } | ^~~~~~~~~~ /usr/include/inspircd/channels.h:123:99: error: ‘modes’ was not declared in this scope; did you mean ‘Modes’? 123 | bool IsModeSet(ModeHandler* mode) { return ((mode->GetId() != ModeParser::MODEID_MAX) && (modes[mode->GetId()])); } | ^~~~~ | Modes /usr/include/inspircd/channels.h: In member function ‘size_t Channel::GetUserCounter() const’: /usr/include/inspircd/channels.h:155:48: error: ‘userlist’ was not declared in this scope 155 | size_t GetUserCounter() const { return userlist.size(); } | ^~~~~~~~ /usr/include/inspircd/channels.h: In member function ‘void Channel::KickUser(int*, int*, const std::string&)’: /usr/include/inspircd/channels.h:204:17: error: ‘MemberMap’ has not been declared 204 | MemberMap::iterator it = userlist.find(user); | ^~~~~~~~~ /usr/include/inspircd/channels.h:205:21: error: ‘it’ was not declared in this scope; did you mean ‘int’? 205 | if (it != userlist.end()) | ^~ | int /usr/include/inspircd/channels.h:205:27: error: ‘userlist’ was not declared in this scope 205 | if (it != userlist.end()) | ^~~~~~~~ /usr/include/inspircd/channels.h: At global scope: /usr/include/inspircd/channels.h:294:13: error: ‘bool Channel::HasUser’ is not a static data member of ‘class Channel’ 294 | inline bool Channel::HasUser(User* user) | ^~~~~~~ /usr/include/inspircd/channels.h:294:30: error: ‘User’ was not declared in this scope; did you mean ‘DelUser’? 294 | inline bool Channel::HasUser(User* user) | ^~~~ | DelUser /usr/include/inspircd/channels.h:294:36: error: ‘user’ was not declared in this scope 294 | inline bool Channel::HasUser(User* user) | ^~~~ /usr/include/inspircd/channels.h:299:20: error: ‘std::string Channel::GetModeParameter’ is not a static data member of ‘class Channel’ 299 | inline std::string Channel::GetModeParameter(ChanModeReference& mode) | ^~~~~~~ /usr/include/inspircd/channels.h:299:46: error: ‘ChanModeReference’ was not declared in this scope 299 | inline std::string Channel::GetModeParameter(ChanModeReference& mode) | ^~~~~~~~~~~~~~~~~ /usr/include/inspircd/channels.h:299:65: error: ‘mode’ was not declared in this scope 299 | inline std::string Channel::GetModeParameter(ChanModeReference& mode) | ^~~~ /usr/include/inspircd/channels.h:300:1: error: expected ‘,’ or ‘;’ before ‘{’ token 300 | { | ^ /usr/include/inspircd/channels.h: In member function ‘std::string Channel::GetModeParameter(ModeHandler*)’: /usr/include/inspircd/channels.h:311:34: error: cannot convert ‘Channel*’ to ‘int*’ 311 | pm->GetParameter(this, out); | ^~~~ | | | Channel* /usr/include/inspircd/parammode.h:38:44: note: initializing argument 1 of ‘virtual void ParamModeBase::GetParameter(int*, std::string&)’ 38 | virtual void GetParameter(Channel* chan, std::string& out) = 0; | ~~~~~~~~~^~~~ /usr/include/inspircd/channels.h: In member function ‘std::string Channel::GetModeParameter(ParamModeBase*)’: /usr/include/inspircd/channels.h:319:34: error: cannot convert ‘Channel*’ to ‘int*’ 319 | pm->GetParameter(this, out); | ^~~~ | | | Channel* /usr/include/inspircd/parammode.h:38:44: note: initializing argument 1 of ‘virtual void ParamModeBase::GetParameter(int*, std::string&)’ 38 | virtual void GetParameter(Channel* chan, std::string& out) = 0; | ~~~~~~~~~^~~~ /usr/include/inspircd/channels.h: At global scope: /usr/include/inspircd/channels.h:323:13: error: ‘bool Channel::IsModeSet’ is not a static data member of ‘class Channel’ 323 | inline bool Channel::IsModeSet(ChanModeReference& mode) | ^~~~~~~ /usr/include/inspircd/channels.h:323:32: error: ‘ChanModeReference’ was not declared in this scope 323 | inline bool Channel::IsModeSet(ChanModeReference& mode) | ^~~~~~~~~~~~~~~~~ /usr/include/inspircd/channels.h:323:51: error: ‘mode’ was not declared in this scope 323 | inline bool Channel::IsModeSet(ChanModeReference& mode) | ^~~~ In file included from /usr/include/inspircd/clientprotocol.h:23, from /tmp/XDrPsg2cTs/dump1.h:17: /usr/include/inspircd/event.h:37:69: error: ‘dynamic_reference_base’ has not been declared 37 | class Events::ModuleEventProvider : public ServiceProvider, private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:37:93: error: expected ‘{’ before ‘CaptureHook’ 37 | class Events::ModuleEventProvider : public ServiceProvider, private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~ /usr/include/inspircd/event.h:39:2: error: expected primary-expression before ‘public’ 39 | public: | ^~~~~~ /usr/include/inspircd/event.h:39:2: error: expected ‘}’ before ‘public’ /usr/include/inspircd/event.h:38:1: note: to match this ‘{’ 38 | { | ^ /usr/include/inspircd/event.h:47:33: error: ‘ModuleEventListener’ has not been declared 47 | bool operator()(ModuleEventListener* lhs, ModuleEventListener* rhs) const; | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:47:59: error: ‘ModuleEventListener’ has not been declared 47 | bool operator()(ModuleEventListener* lhs, ModuleEventListener* rhs) const; | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:50:23: error: ‘flat_multiset’ in namespace ‘insp’ does not name a template type 50 | typedef insp::flat_multiset SubscriberList; | ^~~~~~~~~~~~~ /usr/include/inspircd/event.h: In function ‘int ModuleEventProvider(Module*, const std::string&)’: /usr/include/inspircd/event.h:57:19: error: only constructors take member initializers 57 | : ServiceProvider(mod, eventid, SERVICE_DATA) | ^~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:60:17: error: ‘prov’ was not declared in this scope 60 | prov.SetCaptureHook(this); | ^~~~ /usr/include/inspircd/event.h:60:37: error: invalid use of ‘this’ in non-member function 60 | prov.SetCaptureHook(this); | ^~~~ /usr/include/inspircd/event.h: At global scope: /usr/include/inspircd/event.h:64:35: error: non-member function ‘const Module* GetModule()’ cannot have cv-qualifier 64 | const Module* GetModule() const { return prov.creator; } | ^~~~~ /usr/include/inspircd/event.h: In function ‘const Module* GetModule()’: /usr/include/inspircd/event.h:64:50: error: ‘prov’ was not declared in this scope 64 | const Module* GetModule() const { return prov.creator; } | ^~~~ /usr/include/inspircd/event.h: At global scope: /usr/include/inspircd/event.h:69:15: error: ‘SubscriberList’ does not name a type 69 | const SubscriberList& GetSubscribers() const { return prov->subscribers; } | ^~~~~~~~~~~~~~ /usr/include/inspircd/event.h:74:14: error: variable or field ‘Subscribe’ declared void 74 | void Subscribe(ModuleEventListener* subscriber) | ^~~~~~~~~ /usr/include/inspircd/event.h:74:24: error: ‘ModuleEventListener’ was not declared in this scope; did you mean ‘Events::ModuleEventListener’? 74 | void Subscribe(ModuleEventListener* subscriber) | ^~~~~~~~~~~~~~~~~~~ | Events::ModuleEventListener /usr/include/inspircd/event.h:27:15: note: ‘Events::ModuleEventListener’ declared here 27 | class ModuleEventListener; | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:74:45: error: ‘subscriber’ was not declared in this scope 74 | void Subscribe(ModuleEventListener* subscriber) | ^~~~~~~~~~ /usr/include/inspircd/event.h:83:14: error: variable or field ‘Unsubscribe’ declared void 83 | void Unsubscribe(ModuleEventListener* subscriber) | ^~~~~~~~~~~ /usr/include/inspircd/event.h:83:26: error: ‘ModuleEventListener’ was not declared in this scope; did you mean ‘Events::ModuleEventListener’? 83 | void Unsubscribe(ModuleEventListener* subscriber) | ^~~~~~~~~~~~~~~~~~~ | Events::ModuleEventListener /usr/include/inspircd/event.h:27:15: note: ‘Events::ModuleEventListener’ declared here 27 | class ModuleEventListener; | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:83:47: error: ‘subscriber’ was not declared in this scope 83 | void Unsubscribe(ModuleEventListener* subscriber) | ^~~~~~~~~~ /usr/include/inspircd/event.h:89:2: error: expected unqualified-id before ‘private’ 89 | private: | ^~~~~~~ /usr/include/inspircd/event.h:100:9: error: ‘virtual’ outside class declaration 100 | virtual void OnSubscribe(ModuleEventListener* subscriber) { } | ^~~~~~~ /usr/include/inspircd/event.h:100:22: error: variable or field ‘OnSubscribe’ declared void 100 | virtual void OnSubscribe(ModuleEventListener* subscriber) { } | ^~~~~~~~~~~ /usr/include/inspircd/event.h:100:34: error: ‘ModuleEventListener’ was not declared in this scope; did you mean ‘Events::ModuleEventListener’? 100 | virtual void OnSubscribe(ModuleEventListener* subscriber) { } | ^~~~~~~~~~~~~~~~~~~ | Events::ModuleEventListener /usr/include/inspircd/event.h:27:15: note: ‘Events::ModuleEventListener’ declared here 27 | class ModuleEventListener; | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:100:55: error: ‘subscriber’ was not declared in this scope 100 | virtual void OnSubscribe(ModuleEventListener* subscriber) { } | ^~~~~~~~~~ /usr/include/inspircd/event.h:105:9: error: ‘virtual’ outside class declaration 105 | virtual void OnUnsubscribe(ModuleEventListener* subscriber) { } | ^~~~~~~ /usr/include/inspircd/event.h:105:22: error: variable or field ‘OnUnsubscribe’ declared void 105 | virtual void OnUnsubscribe(ModuleEventListener* subscriber) { } | ^~~~~~~~~~~~~ /usr/include/inspircd/event.h:105:36: error: ‘ModuleEventListener’ was not declared in this scope; did you mean ‘Events::ModuleEventListener’? 105 | virtual void OnUnsubscribe(ModuleEventListener* subscriber) { } | ^~~~~~~~~~~~~~~~~~~ | Events::ModuleEventListener /usr/include/inspircd/event.h:27:15: note: ‘Events::ModuleEventListener’ declared here 27 | class ModuleEventListener; | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:105:57: error: ‘subscriber’ was not declared in this scope 105 | virtual void OnUnsubscribe(ModuleEventListener* subscriber) { } | ^~~~~~~~~~ /usr/include/inspircd/event.h:112:9: error: ‘dynamic_reference_nocheck’ does not name a type 112 | dynamic_reference_nocheck prov; | ^~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:117:9: error: ‘SubscriberList’ does not name a type 117 | SubscriberList subscribers; | ^~~~~~~~~~~~~~ /usr/include/inspircd/event.h:118:1: error: expected declaration before ‘}’ token 118 | }; | ^ /usr/include/inspircd/event.h:123:45: error: ‘dynamic_reference_base’ has not been declared 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:69: error: expected ‘{’ before ‘CaptureHook’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~ /usr/include/inspircd/event.h:123:69: error: redefinition of ‘int CaptureHook’ /usr/include/inspircd/event.h:37:93: note: ‘int CaptureHook’ previously defined here 37 | class Events::ModuleEventProvider : public ServiceProvider, private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~ /usr/include/inspircd/event.h:127:9: error: ‘dynamic_reference_nocheck’ was not declared in this scope 127 | dynamic_reference_nocheck prov; | ^~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:127:56: error: ‘prov’ was not declared in this scope 127 | dynamic_reference_nocheck prov; | ^~~~ /usr/include/inspircd/event.h:127:60: error: expected ‘}’ before ‘;’ token 127 | dynamic_reference_nocheck prov; | ^ /usr/include/inspircd/event.h:124:1: note: to match this ‘{’ 124 | { | ^ In file included from /usr/include/inspircd/base.h:31: /usr/include/inspircd/compat.h:72:25: error: virt-specifiers in ‘OnCapture’ not allowed outside a class definition 72 | # define CXX11_OVERRIDE override | ^~~~~~~~ /usr/include/inspircd/event.h:133:26: note: in expansion of macro ‘CXX11_OVERRIDE’ 133 | void OnCapture() CXX11_OVERRIDE | ^~~~~~~~~~~~~~ /usr/include/inspircd/event.h: In function ‘void OnCapture()’: /usr/include/inspircd/event.h:135:17: error: ‘prov’ was not declared in this scope 135 | prov->Subscribe(this); | ^~~~ /usr/include/inspircd/event.h:135:33: error: invalid use of ‘this’ in non-member function 135 | prov->Subscribe(this); | ^~~~ /usr/include/inspircd/event.h: At global scope: /usr/include/inspircd/event.h:138:2: error: expected unqualified-id before ‘public’ 138 | public: | ^~~~~~ /usr/include/inspircd/event.h:146:95: error: ‘DefaultPriority’ was not declared in this scope; did you mean ‘eventpriority’? 146 | ModuleEventListener(Module* mod, const std::string& eventid, unsigned int eventprio = DefaultPriority) | ^~~~~~~~~~~~~~~ | eventpriority /usr/include/inspircd/event.h: In function ‘int ModuleEventListener(Module*, const std::string&, unsigned int)’: /usr/include/inspircd/event.h:147:19: error: only constructors take member initializers 147 | : prov(mod, eventid) | ^~~~ /usr/include/inspircd/event.h:150:17: error: ‘prov’ was not declared in this scope 150 | prov.SetCaptureHook(this); | ^~~~ /usr/include/inspircd/event.h:150:37: error: invalid use of ‘this’ in non-member function 150 | prov.SetCaptureHook(this); | ^~~~ /usr/include/inspircd/event.h:153:25: error: ‘ModuleEventListener’ is not a class, namespace, or enumeration 153 | ModuleEventListener::OnCapture(); | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h: At global scope: /usr/include/inspircd/event.h:156:29: error: expected class-name before ‘(’ token 156 | ~ModuleEventListener() | ^ /usr/include/inspircd/event.h:163:35: error: non-member function ‘const Module* GetModule()’ cannot have cv-qualifier 163 | const Module* GetModule() const { return prov.creator; } | ^~~~~ /usr/include/inspircd/event.h:163:23: error: redefinition of ‘const Module* GetModule()’ 163 | const Module* GetModule() const { return prov.creator; } | ^~~~~~~~~ /usr/include/inspircd/event.h:64:23: note: ‘const Module* GetModule()’ previously defined here 64 | const Module* GetModule() const { return prov.creator; } | ^~~~~~~~~ /usr/include/inspircd/event.h: In function ‘const Module* GetModule()’: /usr/include/inspircd/event.h:163:50: error: ‘prov’ was not declared in this scope 163 | const Module* GetModule() const { return prov.creator; } | ^~~~ /usr/include/inspircd/event.h: At global scope: /usr/include/inspircd/event.h:166:36: error: non-member function ‘unsigned int GetPriority()’ cannot have cv-qualifier 166 | unsigned int GetPriority() const { return eventpriority; } | ^~~~~ /usr/include/inspircd/event.h:167:1: error: expected declaration before ‘}’ token 167 | }; | ^ /usr/include/inspircd/event.h:169:42: error: ‘Events::ModuleEventProvider::Comp’ has not been declared 169 | inline bool Events::ModuleEventProvider::Comp::operator()(Events::ModuleEventListener* lhs, Events::ModuleEventListener* rhs) const | ^~~~ /usr/include/inspircd/event.h:169:127: error: non-member function ‘bool operator()(Events::ModuleEventListener*, Events::ModuleEventListener*)’ cannot have cv-qualifier 169 | inline bool Events::ModuleEventProvider::Comp::operator()(Events::ModuleEventListener* lhs, Events::ModuleEventListener* rhs) const | ^~~~~ /usr/include/inspircd/event.h:169:13: error: ‘bool operator()(Events::ModuleEventListener*, Events::ModuleEventListener*)’ must be a non-static member function 169 | inline bool Events::ModuleEventProvider::Comp::operator()(Events::ModuleEventListener* lhs, Events::ModuleEventListener* rhs) const | ^~~~~~ /usr/include/inspircd/event.h:174:42: error: ‘Events::ModuleEventProvider::ElementComp’ has not been declared 174 | inline bool Events::ModuleEventProvider::ElementComp::operator()(Events::ModuleEventListener* lhs, Events::ModuleEventListener* rhs) const | ^~~~~~~~~~~ /usr/include/inspircd/event.h:174:134: error: non-member function ‘bool operator()(Events::ModuleEventListener*, Events::ModuleEventListener*)’ cannot have cv-qualifier 174 | inline bool Events::ModuleEventProvider::ElementComp::operator()(Events::ModuleEventListener* lhs, Events::ModuleEventListener* rhs) const | ^~~~~ /usr/include/inspircd/event.h:174:13: error: ‘bool operator()(Events::ModuleEventListener*, Events::ModuleEventListener*)’ must be a non-static member function 174 | inline bool Events::ModuleEventProvider::ElementComp::operator()(Events::ModuleEventListener* lhs, Events::ModuleEventListener* rhs) const | ^~~~~~ /usr/include/inspircd/clientprotocol.h:45:25: error: ‘ParamList’ in namespace ‘ClientProtocol’ does not name a type 45 | ClientProtocol::ParamList params; | ^~~~~~~~~ /usr/include/inspircd/clientprotocol.h:49:25: error: ‘TagMap’ in namespace ‘ClientProtocol’ does not name a type 49 | ClientProtocol::TagMap tags; | ^~~~~~ /usr/include/inspircd/clientprotocol.h:56:14: error: ‘bitset’ in namespace ‘std’ does not name a template type 56 | std::bitset<64> selection; | ^~~~~~ /usr/include/inspircd/clientprotocol.h:24:1: note: ‘std::bitset’ is defined in header ‘’; did you forget to ‘#include ’? 23 | #include "event.h" +++ |+#include 24 | /usr/include/inspircd/clientprotocol.h:65:31: error: ‘TagMap’ does not name a type 65 | bool IsSelected(const TagMap& tags, TagMap::const_iterator it) const | ^~~~~~ /usr/include/inspircd/clientprotocol.h:65:45: error: ‘TagMap’ has not been declared 65 | bool IsSelected(const TagMap& tags, TagMap::const_iterator it) const | ^~~~~~ /usr/include/inspircd/clientprotocol.h:65:68: error: expected ‘,’ or ‘...’ before ‘it’ 65 | bool IsSelected(const TagMap& tags, TagMap::const_iterator it) const | ^~ /usr/include/inspircd/clientprotocol.h:76:27: error: ‘TagMap’ does not name a type 76 | void Select(const TagMap& tags, TagMap::const_iterator it) | ^~~~~~ /usr/include/inspircd/clientprotocol.h:76:41: error: ‘TagMap’ has not been declared 76 | void Select(const TagMap& tags, TagMap::const_iterator it) | ^~~~~~ /usr/include/inspircd/clientprotocol.h:76:64: error: expected ‘,’ or ‘...’ before ‘it’ 76 | void Select(const TagMap& tags, TagMap::const_iterator it) | ^~ /usr/include/inspircd/clientprotocol.h: In member function ‘bool ClientProtocol::TagSelection::IsSelected(const int&, int) const’: /usr/include/inspircd/clientprotocol.h:67:57: error: request for member ‘begin’ in ‘tags’, which is of non-class type ‘const int’ 67 | const size_t index = std::distance(tags.begin(), it); | ^~~~~ /usr/include/inspircd/clientprotocol.h:67:66: error: ‘it’ was not declared in this scope; did you mean ‘int’? 67 | const size_t index = std::distance(tags.begin(), it); | ^~ | int /usr/include/inspircd/clientprotocol.h:68:34: error: ‘selection’ was not declared in this scope; did you mean ‘select’? 68 | return ((index < selection.size()) && (selection[index])); | ^~~~~~~~~ | select /usr/include/inspircd/clientprotocol.h: In member function ‘void ClientProtocol::TagSelection::Select(const int&, int)’: /usr/include/inspircd/clientprotocol.h:78:57: error: request for member ‘begin’ in ‘tags’, which is of non-class type ‘const int’ 78 | const size_t index = std::distance(tags.begin(), it); | ^~~~~ /usr/include/inspircd/clientprotocol.h:78:66: error: ‘it’ was not declared in this scope; did you mean ‘int’? 78 | const size_t index = std::distance(tags.begin(), it); | ^~ | int /usr/include/inspircd/clientprotocol.h:79:29: error: ‘selection’ was not declared in this scope; did you mean ‘select’? 79 | if (index < selection.size()) | ^~~~~~~~~ | select /usr/include/inspircd/clientprotocol.h: In member function ‘bool ClientProtocol::TagSelection::operator==(const ClientProtocol::TagSelection&) const’: /usr/include/inspircd/clientprotocol.h:89:31: error: ‘const class ClientProtocol::TagSelection’ has no member named ‘selection’; did you mean ‘Select’? 89 | return (this->selection == other.selection); | ^~~~~~~~~ | Select /usr/include/inspircd/clientprotocol.h:89:50: error: ‘const class ClientProtocol::TagSelection’ has no member named ‘selection’; did you mean ‘Select’? 89 | return (this->selection == other.selection); | ^~~~~~~~~ | Select /usr/include/inspircd/clientprotocol.h: At global scope: /usr/include/inspircd/clientprotocol.h:95:9: error: ‘User’ does not name a type 95 | User* sourceuser; | ^~~~ /usr/include/inspircd/clientprotocol.h:104:27: error: expected ‘)’ before ‘*’ token 104 | MessageSource(User* Sourceuser = NULL) | ~ ^ | ) /usr/include/inspircd/clientprotocol.h:116:53: error: ‘User’ has not been declared 116 | MessageSource(const std::string& Sourcestr, User* Sourceuser = NULL) | ^~~~ /usr/include/inspircd/clientprotocol.h:138:9: error: ‘User’ does not name a type 138 | User* GetSourceUser() const { return sourceuser; } | ^~~~ /usr/include/inspircd/clientprotocol.h:144:28: error: ‘User’ has not been declared 144 | void SetSourceUser(User* Sourceuser) | ^~~~ /usr/include/inspircd/clientprotocol.h:156:54: error: ‘User’ has not been declared 156 | void SetSource(const std::string& Sourcestr, User* Sourceuser = NULL) | ^~~~ /usr/include/inspircd/clientprotocol.h: In member function ‘const std::string* ClientProtocol::MessageSource::GetSource() const’: /usr/include/inspircd/clientprotocol.h:129:21: error: ‘sourceuser’ was not declared in this scope; did you mean ‘sourcestr’? 129 | if (sourceuser) | ^~~~~~~~~~ | sourcestr /usr/include/inspircd/clientprotocol.h: In member function ‘void ClientProtocol::MessageSource::SetSourceUser(int*)’: /usr/include/inspircd/clientprotocol.h:146:17: error: ‘sourceuser’ was not declared in this scope; did you mean ‘Sourceuser’? 146 | sourceuser = Sourceuser; | ^~~~~~~~~~ | Sourceuser /usr/include/inspircd/clientprotocol.h: In member function ‘void ClientProtocol::MessageSource::SetSource(const std::string&, int*)’: /usr/include/inspircd/clientprotocol.h:159:17: error: ‘sourceuser’ was not declared in this scope; did you mean ‘Sourceuser’? 159 | sourceuser = Sourceuser; | ^~~~~~~~~~ | Sourceuser /usr/include/inspircd/clientprotocol.h: In member function ‘void ClientProtocol::MessageSource::SetSource(const ClientProtocol::MessageSource&)’: /usr/include/inspircd/clientprotocol.h:168:17: error: ‘sourceuser’ was not declared in this scope; did you mean ‘sourcestr’? 168 | sourceuser = other.sourceuser; | ^~~~~~~~~~ | sourcestr /usr/include/inspircd/clientprotocol.h:168:36: error: ‘const class ClientProtocol::MessageSource’ has no member named ‘sourceuser’; did you mean ‘sourcestr’? 168 | sourceuser = other.sourceuser; | ^~~~~~~~~~ | sourcestr /usr/include/inspircd/clientprotocol.h: At global scope: /usr/include/inspircd/clientprotocol.h:181:42: error: qualified name does not name a class before ‘:’ token 181 | class CoreExport ClientProtocol::Message : public ClientProtocol::MessageSource | ^ /usr/include/inspircd/clientprotocol.h:181:42: error: expected ‘{’ before ‘:’ token /usr/include/inspircd/clientprotocol.h:181:42: error: expected unqualified-id before ‘:’ token /usr/include/inspircd/clientprotocol.h:470:1: error: qualified name does not name a class before ‘{’ token 470 | { | ^ /usr/include/inspircd/clientprotocol.h:527:9: error: qualified name does not name a class before ‘:’ token 527 | : public Events::ModuleEventProvider | ^ /usr/include/inspircd/clientprotocol.h:527:9: error: expected ‘{’ before ‘:’ token /usr/include/inspircd/clientprotocol.h:527:9: error: expected unqualified-id before ‘:’ token /usr/include/inspircd/clientprotocol.h:541:53: error: qualified name does not name a class before ‘:’ token 541 | class CoreExport ClientProtocol::MessageTagProvider : public Events::ModuleEventListener | ^ /usr/include/inspircd/clientprotocol.h:541:53: error: expected ‘{’ before ‘:’ token /usr/include/inspircd/clientprotocol.h:541:53: error: expected unqualified-id before ‘:’ token /usr/include/inspircd/clientprotocol.h:588:61: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 588 | class CoreExport ClientProtocol::EventHook : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/clientprotocol.h:611:56: error: ‘Event’ in namespace ‘ClientProtocol’ does not name a type 611 | virtual void OnEventInit(const ClientProtocol::Event& ev) | ^~~~~ /usr/include/inspircd/clientprotocol.h:625:17: error: ‘ModResult’ does not name a type; did you mean ‘CmdResult’? 625 | virtual ModResult OnPreEventSend(LocalUser* user, const ClientProtocol::Event& ev, ClientProtocol::MessageList& messagelist) = 0; | ^~~~~~~~~ | CmdResult /usr/include/inspircd/clientprotocol.h:602:110: error: incomplete type ‘Events::ModuleEventListener’ used in nested name specifier 602 | EventHook(Module* mod, const std::string& name, unsigned int priority = Events::ModuleEventListener::DefaultPriority) | ^~~~~~~~~~~~~~~ /usr/include/inspircd/clientprotocol.h: In constructor ‘ClientProtocol::EventHook::EventHook(Module*, const std::string&, unsigned int)’: /usr/include/inspircd/clientprotocol.h:603:27: error: type ‘Events::ModuleEventListener’ is not a direct base of ‘ClientProtocol::EventHook’ 603 | : Events::ModuleEventListener(mod, GetEventName(name), priority) | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/clientprotocol.h: At global scope: /usr/include/inspircd/clientprotocol.h:632:48: error: qualified name does not name a class before ‘:’ token 632 | class CoreExport ClientProtocol::EventProvider : public Events::ModuleEventProvider | ^ /usr/include/inspircd/clientprotocol.h:632:48: error: expected ‘{’ before ‘:’ token /usr/include/inspircd/clientprotocol.h:632:48: error: expected unqualified-id before ‘:’ token /usr/include/inspircd/clientprotocol.h:651:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 651 | EventProvider numeric; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:652:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 652 | EventProvider join; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:653:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 653 | EventProvider part; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:654:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 654 | EventProvider kick; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:655:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 655 | EventProvider quit; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:656:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 656 | EventProvider nick; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:657:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 657 | EventProvider mode; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:658:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 658 | EventProvider topic; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:659:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 659 | EventProvider privmsg; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:660:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 660 | EventProvider invite; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:661:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 661 | EventProvider ping; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:662:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 662 | EventProvider pong; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h:663:9: error: ‘EventProvider’ does not name a type; did you mean ‘ServiceProvider’? 663 | EventProvider error; | ^~~~~~~~~~~~~ | ServiceProvider /usr/include/inspircd/clientprotocol.h: In constructor ‘ClientProtocol::RFCEvents::RFCEvents()’: /usr/include/inspircd/clientprotocol.h:666:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘numeric’ 666 | : numeric(NULL, "NUMERIC") | ^~~~~~~ /usr/include/inspircd/clientprotocol.h:667:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘join’ 667 | , join(NULL, "JOIN") | ^~~~ /usr/include/inspircd/clientprotocol.h:668:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘part’ 668 | , part(NULL, "PART") | ^~~~ /usr/include/inspircd/clientprotocol.h:669:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘kick’ 669 | , kick(NULL, "KICK") | ^~~~ /usr/include/inspircd/clientprotocol.h:670:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘quit’ 670 | , quit(NULL, "QUIT") | ^~~~ /usr/include/inspircd/clientprotocol.h:671:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘nick’ 671 | , nick(NULL, "NICK") | ^~~~ /usr/include/inspircd/clientprotocol.h:672:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘mode’ 672 | , mode(NULL, "MODE") | ^~~~ /usr/include/inspircd/clientprotocol.h:673:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘topic’ 673 | , topic(NULL, "TOPIC") | ^~~~~ /usr/include/inspircd/clientprotocol.h:674:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘privmsg’ 674 | , privmsg(NULL, "PRIVMSG") | ^~~~~~~ /usr/include/inspircd/clientprotocol.h:675:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘invite’ 675 | , invite(NULL, "INVITE") | ^~~~~~ /usr/include/inspircd/clientprotocol.h:676:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘ping’ 676 | , ping(NULL, "PING") | ^~~~ /usr/include/inspircd/clientprotocol.h:677:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘pong’ 677 | , pong(NULL, "PONG") | ^~~~ /usr/include/inspircd/clientprotocol.h:678:19: error: class ‘ClientProtocol::RFCEvents’ does not have any field named ‘error’ 678 | , error(NULL, "ERROR") | ^~~~~ /usr/include/inspircd/clientprotocol.h: At global scope: /usr/include/inspircd/clientprotocol.h:686:45: error: qualified name does not name a class before ‘:’ token 686 | class CoreExport ClientProtocol::Serializer : public DataProvider | ^ /usr/include/inspircd/clientprotocol.h:686:45: error: expected ‘{’ before ‘:’ token /usr/include/inspircd/clientprotocol.h:686:45: error: expected unqualified-id before ‘:’ token /usr/include/inspircd/clientprotocol.h:740:24: error: ‘MessageTagData’ in namespace ‘ClientProtocol’ does not name a type 740 | inline ClientProtocol::MessageTagData::MessageTagData(MessageTagProvider* prov, const std::string& val, void* data) | ^~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:18: /usr/include/inspircd/clientprotocolevent.h:32:73: error: ‘ClientProtocol::Messages’ has not been declared 32 | struct CoreExport ClientProtocol::Events::Join : public ClientProtocol::Messages::Join, public ClientProtocol::Event | ^~~~~~~~ /usr/include/inspircd/clientprotocolevent.h:32:83: error: expected ‘{’ before ‘Join’ 32 | struct CoreExport ClientProtocol::Events::Join : public ClientProtocol::Messages::Join, public ClientProtocol::Event | ^~~~ /usr/include/inspircd/clientprotocolevent.h:32:89: error: expected unqualified-id before ‘public’ 32 | struct CoreExport ClientProtocol::Events::Join : public ClientProtocol::Messages::Join, public ClientProtocol::Event | ^~~~~~ /usr/include/inspircd/clientprotocolevent.h:53:1: error: expected class-name before ‘{’ token 53 | { | ^ /usr/include/inspircd/clientprotocolevent.h:54:14: error: ‘list’ in namespace ‘std’ does not name a template type 54 | std::list modelist; | ^~~~ /usr/include/inspircd/clientprotocolevent.h:1:1: note: ‘std::list’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | /* /usr/include/inspircd/clientprotocolevent.h:55:21: error: ‘Message’ was not declared in this scope 55 | std::vector modemsgplist; | ^~~~~~~ /usr/include/inspircd/clientprotocolevent.h:55:29: error: template argument 1 is invalid 55 | std::vector modemsgplist; | ^ /usr/include/inspircd/clientprotocolevent.h:55:29: error: template argument 2 is invalid /usr/include/inspircd/clientprotocolevent.h:59:35: error: ‘User’ has not been declared 59 | static void BuildMessages(User* source, Channel* Chantarget, User* Usertarget, const Modes::ChangeList& changelist, std::list& modelist, std::vector& modemsgplist) | ^~~~ /usr/include/inspircd/clientprotocolevent.h:59:70: error: ‘User’ has not been declared 59 | static void BuildMessages(User* source, Channel* Chantarget, User* Usertarget, const Modes::ChangeList& changelist, std::list& modelist, std::vector& modemsgplist) | ^~~~ /usr/include/inspircd/clientprotocolevent.h:59:125: error: ‘std::list’ has not been declared 59 | static void BuildMessages(User* source, Channel* Chantarget, User* Usertarget, const Modes::ChangeList& changelist, std::list& modelist, std::vector& modemsgplist) | ^~~ /usr/include/inspircd/clientprotocolevent.h:59:134: error: expected ‘,’ or ‘...’ before ‘<’ token 59 | static void BuildMessages(User* source, Channel* Chantarget, User* Usertarget, const Modes::ChangeList& changelist, std::list& modelist, std::vector& modemsgplist) | ^ /usr/include/inspircd/clientprotocolevent.h:69:18: error: expected ‘)’ before ‘*’ token 69 | Mode(User* source, Channel* Chantarget, User* Usertarget, const Modes::ChangeList& changelist) | ~ ^ | ) /usr/include/inspircd/clientprotocolevent.h:78:20: error: ‘list’ in namespace ‘std’ does not name a template type 78 | const std::list& GetMessages() const { return modelist; } | ^~~~ /usr/include/inspircd/clientprotocolevent.h:78:15: note: ‘std::list’ is defined in header ‘’; did you forget to ‘#include ’? 78 | const std::list& GetMessages() const { return modelist; } | ^~~ /usr/include/inspircd/clientprotocolevent.h: In static member function ‘static void ClientProtocol::Events::Mode::BuildMessages(int*, Channel*, int*, const Modes::ChangeList&, int)’: /usr/include/inspircd/clientprotocolevent.h:62:133: error: ‘modelist’ was not declared in this scope; did you mean ‘mode_t’? 62 | for (Modes::ChangeList::List::const_iterator i = changelist.getlist().begin(); i != changelist.getlist().end(); i = modelist.back().GetEndIterator()) | ^~~~~~~~ | mode_t /usr/include/inspircd/clientprotocolevent.h:64:60: error: ‘ClientProtocol::Messages’ has not been declared 64 | modelist.push_back(ClientProtocol::Messages::Mode(source, Chantarget, Usertarget, changelist, i)); | ^~~~~~~~ /usr/include/inspircd/clientprotocolevent.h:65:25: error: invalid use of member ‘ClientProtocol::Events::Mode::modemsgplist’ in static member function 65 | modemsgplist.push_back(&modelist.back()); | ^~~~~~~~~~~~ /usr/include/inspircd/clientprotocolevent.h:55:31: note: declared here 55 | std::vector modemsgplist; | ^~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:19: /usr/include/inspircd/clientprotocolmsg.h: At global scope: /usr/include/inspircd/clientprotocolmsg.h:49:1: error: expected class-name before ‘{’ token 49 | { | ^ /usr/include/inspircd/clientprotocolmsg.h:58:38: error: ‘Numeric’ in namespace ‘::’ does not name a type 58 | void InitFromNumeric(const ::Numeric::Numeric& numeric) | ^~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:58:54: error: expected unqualified-id before ‘&’ token 58 | void InitFromNumeric(const ::Numeric::Numeric& numeric) | ^ /usr/include/inspircd/clientprotocolmsg.h:58:54: error: expected ‘)’ before ‘&’ token 58 | void InitFromNumeric(const ::Numeric::Numeric& numeric) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:58:54: error: expected ‘;’ at end of member declaration 58 | void InitFromNumeric(const ::Numeric::Numeric& numeric) | ^ | ; /usr/include/inspircd/clientprotocolmsg.h:58:56: error: ‘numeric’ does not name a type; did you mean ‘Numeric’? 58 | void InitFromNumeric(const ::Numeric::Numeric& numeric) | ^~~~~~~ | Numeric /usr/include/inspircd/clientprotocolmsg.h:71:25: error: ‘Numeric’ in namespace ‘::’ does not name a type 71 | Numeric(const ::Numeric::Numeric& num, User* user) | ^~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:71:41: error: expected unqualified-id before ‘&’ token 71 | Numeric(const ::Numeric::Numeric& num, User* user) | ^ /usr/include/inspircd/clientprotocolmsg.h:71:41: error: expected ‘)’ before ‘&’ token 71 | Numeric(const ::Numeric::Numeric& num, User* user) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:71:41: error: constructors may not be ref-qualified /usr/include/inspircd/clientprotocolmsg.h:71:41: error: expected ‘;’ at end of member declaration 71 | Numeric(const ::Numeric::Numeric& num, User* user) | ^ | ; /usr/include/inspircd/clientprotocolmsg.h:71:43: error: ‘num’ does not name a type; did you mean ‘enum’? 71 | Numeric(const ::Numeric::Numeric& num, User* user) | ^~~ | enum /usr/include/inspircd/clientprotocolmsg.h:85:25: error: ‘Numeric’ in namespace ‘::’ does not name a type 85 | Numeric(const ::Numeric::Numeric& num, const std::string& target) | ^~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:85:41: error: expected unqualified-id before ‘&’ token 85 | Numeric(const ::Numeric::Numeric& num, const std::string& target) | ^ /usr/include/inspircd/clientprotocolmsg.h:85:41: error: expected ‘)’ before ‘&’ token 85 | Numeric(const ::Numeric::Numeric& num, const std::string& target) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:85:41: error: constructors may not be ref-qualified /usr/include/inspircd/clientprotocolmsg.h:85:41: error: expected ‘;’ at end of member declaration 85 | Numeric(const ::Numeric::Numeric& num, const std::string& target) | ^ | ; /usr/include/inspircd/clientprotocolmsg.h:85:9: error: ‘ClientProtocol::Messages::Numeric::Numeric(...)’ cannot be overloaded with ‘ClientProtocol::Messages::Numeric::Numeric(...)’ 85 | Numeric(const ::Numeric::Numeric& num, const std::string& target) | ^~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:71:9: note: previous declaration ‘ClientProtocol::Messages::Numeric::Numeric(...)’ 71 | Numeric(const ::Numeric::Numeric& num, User* user) | ^~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:85:43: error: ‘num’ does not name a type; did you mean ‘enum’? 85 | Numeric(const ::Numeric::Numeric& num, const std::string& target) | ^~~ | enum /usr/include/inspircd/clientprotocolmsg.h: In member function ‘void ClientProtocol::Messages::Numeric::InitCommand(unsigned int)’: /usr/include/inspircd/clientprotocolmsg.h:55:17: error: ‘SetCommand’ was not declared in this scope; did you mean ‘InitCommand’? 55 | SetCommand(numericstr); | ^~~~~~~~~~ | InitCommand /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Numeric::Numeric(unsigned int)’: /usr/include/inspircd/clientprotocolmsg.h:96:42: error: expected class-name before ‘(’ token 96 | : ClientProtocol::Message(NULL, ServerInstance->Config->GetServerName()) | ^ /usr/include/inspircd/clientprotocolmsg.h:96:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: At global scope: /usr/include/inspircd/clientprotocolmsg.h:107:1: error: expected class-name before ‘{’ token 107 | { | ^ /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Join::Join()’: /usr/include/inspircd/clientprotocolmsg.h:114:42: error: expected class-name before ‘(’ token 114 | : ClientProtocol::Message("JOIN") | ^ /usr/include/inspircd/clientprotocolmsg.h:114:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Join::Join(Membership*)’: /usr/include/inspircd/clientprotocolmsg.h:123:42: error: expected class-name before ‘(’ token 123 | : ClientProtocol::Message("JOIN", Memb->user) | ^ /usr/include/inspircd/clientprotocolmsg.h:123:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Join::Join(Membership*, const std::string&)’: /usr/include/inspircd/clientprotocolmsg.h:133:42: error: expected class-name before ‘(’ token 133 | : ClientProtocol::Message("JOIN", sourcestrref, Memb->user) | ^ /usr/include/inspircd/clientprotocolmsg.h:133:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In member function ‘void ClientProtocol::Messages::Join::SetParams(Membership*)’: /usr/include/inspircd/clientprotocolmsg.h:144:34: error: invalid use of incomplete type ‘class Membership’ 144 | PushParamRef(memb->chan->name); | ^~ /usr/include/inspircd/membership.h:34:18: note: forward declaration of ‘class Membership’ 34 | class CoreExport Membership : public Extensible, public insp::intrusive_list_node | ^~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:144:17: error: ‘PushParamRef’ was not declared in this scope 144 | PushParamRef(memb->chan->name); | ^~~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h: At global scope: /usr/include/inspircd/clientprotocolmsg.h:157:1: error: expected class-name before ‘{’ token 157 | { | ^ /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Part::Part(Membership*, const std::string&)’: /usr/include/inspircd/clientprotocolmsg.h:163:42: error: expected class-name before ‘(’ token 163 | : ClientProtocol::Message("PART", memb->user) | ^ /usr/include/inspircd/clientprotocolmsg.h:163:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: At global scope: /usr/include/inspircd/clientprotocolmsg.h:175:1: error: expected class-name before ‘{’ token 175 | { | ^ /usr/include/inspircd/clientprotocolmsg.h:181:18: error: expected ‘)’ before ‘*’ token 181 | Kick(User* source, Membership* memb, const std::string& reason) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:194:1: error: expected class-name before ‘{’ token 194 | { | ^ /usr/include/inspircd/clientprotocolmsg.h:199:18: error: expected ‘)’ before ‘*’ token 199 | Quit(User* source, const std::string& reason) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:211:1: error: expected class-name before ‘{’ token 211 | { | ^ /usr/include/inspircd/clientprotocolmsg.h:216:18: error: expected ‘)’ before ‘*’ token 216 | Nick(User* source, const std::string& newnick) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:227:1: error: expected class-name before ‘{’ token 227 | { | ^ /usr/include/inspircd/clientprotocolmsg.h:229:9: error: ‘User’ does not name a type 229 | User* usertarget; | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:306:18: error: expected ‘)’ before ‘*’ token 306 | Mode(User* source, Channel* Chantarget, User* Usertarget, const Modes::ChangeList& changelist, Modes::ChangeList::List::const_iterator beginiter) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:323:18: error: expected ‘)’ before ‘*’ token 323 | Mode(User* source, Channel* Chantarget, User* Usertarget, const Modes::ChangeList& changelist) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:349:45: error: ‘User’ has not been declared 349 | void SetParams(Channel* Chantarget, User* Usertarget, const Modes::ChangeList& changelist) | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:382:9: error: ‘User’ does not name a type 382 | User* GetUserTarget() const { return usertarget; } | ^~~~ /usr/include/inspircd/clientprotocolmsg.h: In static member function ‘static std::string ClientProtocol::Messages::Mode::ToModeLetters(const Modes::ChangeList::List&, std::__cxx11::basic_string::size_type, std::vector::const_iterator, std::vector::const_iterator&)’: /usr/include/inspircd/clientprotocolmsg.h:268:44: error: ‘const struct Modes::Change’ has no member named ‘mh’ 268 | ret.push_back(item.mh->GetModeChar()); | ^~ /usr/include/inspircd/clientprotocolmsg.h: In member function ‘void ClientProtocol::Messages::Mode::PushModeParams()’: /usr/include/inspircd/clientprotocolmsg.h:283:33: error: ‘PushParamRef’ was not declared in this scope 283 | PushParamRef(item.param); | ^~~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h: In static member function ‘static std::string ClientProtocol::Messages::Mode::ToModeLetters(const Modes::ChangeList&)’: /usr/include/inspircd/clientprotocolmsg.h:296:60: error: ‘UINT_MAX’ was not declared in this scope 296 | return ToModeLetters(changelist.getlist(), UINT_MAX, changelist.getlist().begin(), dummy); | ^~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:1:1: note: ‘UINT_MAX’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | /* /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Mode::Mode()’: /usr/include/inspircd/clientprotocolmsg.h:338:42: error: expected class-name before ‘(’ token 338 | : ClientProtocol::Message("MODE", ServerInstance->FakeClient) | ^ /usr/include/inspircd/clientprotocolmsg.h:338:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In member function ‘void ClientProtocol::Messages::Mode::SetParams(Channel*, int*, const Modes::ChangeList&)’: /usr/include/inspircd/clientprotocolmsg.h:351:17: error: ‘ClearParams’ was not declared in this scope; did you mean ‘SetParams’? 351 | ClearParams(); | ^~~~~~~~~~~ | SetParams /usr/include/inspircd/clientprotocolmsg.h:354:17: error: ‘usertarget’ was not declared in this scope; did you mean ‘Usertarget’? 354 | usertarget = Usertarget; | ^~~~~~~~~~ | Usertarget /usr/include/inspircd/clientprotocolmsg.h:357:17: error: ‘PushParamRef’ was not declared in this scope 357 | PushParamRef(GetStrTarget()); | ^~~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:358:17: error: ‘PushParam’ was not declared in this scope; did you mean ‘PushModeParams’? 358 | PushParam(ToModeLetters(changelist.getlist(), 450, beginit, lastit)); | ^~~~~~~~~ | PushModeParams /usr/include/inspircd/clientprotocolmsg.h: In member function ‘const std::string& ClientProtocol::Messages::Mode::GetStrTarget() const’: /usr/include/inspircd/clientprotocolmsg.h:377:91: error: ‘usertarget’ was not declared in this scope 377 | const std::string& GetStrTarget() const { return (chantarget ? chantarget->name : usertarget->nick); } | ^~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h: At global scope: /usr/include/inspircd/clientprotocolmsg.h:393:1: error: expected class-name before ‘{’ token 393 | { | ^ /usr/include/inspircd/clientprotocolmsg.h:399:19: error: expected ‘)’ before ‘*’ token 399 | Topic(User* source, const Channel* chan, const std::string& newtopic) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:410:1: error: expected class-name before ‘{’ token 410 | { | ^ /usr/include/inspircd/clientprotocolmsg.h:425:35: error: ‘User’ does not name a type 425 | void PushTargetUser(const User* targetuser) | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:442:50: error: ‘MessageType’ has not been declared 442 | static const char* CommandStrFromMsgType(MessageType mt) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:453:21: error: expected ‘)’ before ‘*’ token 453 | Privmsg(User* source, const std::string& target, const std::string& text, MessageType mt = MSG_PRIVMSG) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:467:21: error: expected ‘)’ before ‘*’ token 467 | Privmsg(User* source, const Channel* targetchan, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:480:21: error: expected ‘)’ before ‘*’ token 480 | Privmsg(User* source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:494:96: error: ‘MessageType’ has not been declared 494 | Privmsg(const std::string& source, const std::string& target, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:517:96: error: ‘MessageType’ has not been declared 517 | Privmsg(const std::string& source, const Channel* targetchan, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:530:50: error: ‘User’ does not name a type 530 | Privmsg(const std::string& source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:530:93: error: ‘MessageType’ has not been declared 530 | Privmsg(const std::string& source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:543:25: error: ‘User’ has not been declared 543 | Privmsg(NoCopy, User* source, const std::string& target, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:543:91: error: ‘MessageType’ has not been declared 543 | Privmsg(NoCopy, User* source, const std::string& target, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:557:25: error: ‘User’ has not been declared 557 | Privmsg(NoCopy, User* source, const Channel* targetchan, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:557:91: error: ‘MessageType’ has not been declared 557 | Privmsg(NoCopy, User* source, const Channel* targetchan, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:570:25: error: ‘User’ has not been declared 570 | Privmsg(NoCopy, User* source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:570:45: error: ‘User’ does not name a type 570 | Privmsg(NoCopy, User* source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:570:88: error: ‘MessageType’ has not been declared 570 | Privmsg(NoCopy, User* source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:583:104: error: ‘MessageType’ has not been declared 583 | Privmsg(NoCopy, const std::string& source, const std::string& target, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:597:104: error: ‘MessageType’ has not been declared 597 | Privmsg(NoCopy, const std::string& source, const Channel* targetchan, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:610:58: error: ‘User’ does not name a type 610 | Privmsg(NoCopy, const std::string& source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:610:101: error: ‘MessageType’ has not been declared 610 | Privmsg(NoCopy, const std::string& source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:494:113: error: ‘MSG_PRIVMSG’ was not declared in this scope 494 | Privmsg(const std::string& source, const std::string& target, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:517:113: error: ‘MSG_PRIVMSG’ was not declared in this scope 517 | Privmsg(const std::string& source, const Channel* targetchan, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:530:110: error: ‘MSG_PRIVMSG’ was not declared in this scope 530 | Privmsg(const std::string& source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:543:108: error: ‘MSG_PRIVMSG’ was not declared in this scope 543 | Privmsg(NoCopy, User* source, const std::string& target, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:557:108: error: ‘MSG_PRIVMSG’ was not declared in this scope 557 | Privmsg(NoCopy, User* source, const Channel* targetchan, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:570:105: error: ‘MSG_PRIVMSG’ was not declared in this scope 570 | Privmsg(NoCopy, User* source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:583:121: error: ‘MSG_PRIVMSG’ was not declared in this scope 583 | Privmsg(NoCopy, const std::string& source, const std::string& target, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:597:121: error: ‘MSG_PRIVMSG’ was not declared in this scope 597 | Privmsg(NoCopy, const std::string& source, const Channel* targetchan, const std::string& text, MessageType mt = MSG_PRIVMSG, char status = 0) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:610:118: error: ‘MSG_PRIVMSG’ was not declared in this scope 610 | Privmsg(NoCopy, const std::string& source, const User* targetuser, const std::string& text, MessageType mt = MSG_PRIVMSG) | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h: In member function ‘void ClientProtocol::Messages::Privmsg::PushTargetChan(char, const Channel*)’: /usr/include/inspircd/clientprotocolmsg.h:417:25: error: ‘PushParam’ was not declared in this scope 417 | PushParam(rawtarget); | ^~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:421:25: error: ‘PushParamRef’ was not declared in this scope 421 | PushParamRef(targetchan->name); | ^~~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h: In member function ‘void ClientProtocol::Messages::Privmsg::PushTargetUser(const int*)’: /usr/include/inspircd/clientprotocolmsg.h:427:33: error: request for member ‘registered’ in ‘* targetuser’, which is of non-class type ‘const int’ 427 | if (targetuser->registered & REG_NICK) | ^~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:427:46: error: ‘REG_NICK’ was not declared in this scope 427 | if (targetuser->registered & REG_NICK) | ^~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:428:50: error: request for member ‘nick’ in ‘* targetuser’, which is of non-class type ‘const int’ 428 | PushParamRef(targetuser->nick); | ^~~~ /usr/include/inspircd/clientprotocolmsg.h:428:25: error: ‘PushParamRef’ was not declared in this scope 428 | PushParamRef(targetuser->nick); | ^~~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h:430:25: error: ‘PushParam’ was not declared in this scope 430 | PushParam("*"); | ^~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h: In static member function ‘static const char* ClientProtocol::Messages::Privmsg::CommandStrFromMsgType(int)’: /usr/include/inspircd/clientprotocolmsg.h:444:32: error: ‘MSG_PRIVMSG’ was not declared in this scope 444 | return ((mt == MSG_PRIVMSG) ? "PRIVMSG" : "NOTICE"); | ^~~~~~~~~~~ /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(const std::string&, const std::string&, const std::string&, int, char)’: /usr/include/inspircd/clientprotocolmsg.h:495:42: error: expected class-name before ‘(’ token 495 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:495:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(const std::string&, const Channel*, const std::string&, int, char)’: /usr/include/inspircd/clientprotocolmsg.h:518:42: error: expected class-name before ‘(’ token 518 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:518:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(const std::string&, const int*, const std::string&, int)’: /usr/include/inspircd/clientprotocolmsg.h:531:42: error: expected class-name before ‘(’ token 531 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:531:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(NoCopy, int*, const std::string&, const std::string&, int)’: /usr/include/inspircd/clientprotocolmsg.h:544:42: error: expected class-name before ‘(’ token 544 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:544:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(NoCopy, int*, const Channel*, const std::string&, int, char)’: /usr/include/inspircd/clientprotocolmsg.h:558:42: error: expected class-name before ‘(’ token 558 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:558:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(NoCopy, int*, const int*, const std::string&, int)’: /usr/include/inspircd/clientprotocolmsg.h:571:42: error: expected class-name before ‘(’ token 571 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:571:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(NoCopy, const std::string&, const std::string&, const std::string&, int)’: /usr/include/inspircd/clientprotocolmsg.h:584:42: error: expected class-name before ‘(’ token 584 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:584:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(NoCopy, const std::string&, const Channel*, const std::string&, int, char)’: /usr/include/inspircd/clientprotocolmsg.h:598:42: error: expected class-name before ‘(’ token 598 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:598:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Privmsg::Privmsg(NoCopy, const std::string&, const int*, const std::string&, int)’: /usr/include/inspircd/clientprotocolmsg.h:611:42: error: expected class-name before ‘(’ token 611 | : ClientProtocol::Message(CommandStrFromMsgType(mt), source) | ^ /usr/include/inspircd/clientprotocolmsg.h:611:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: At global scope: /usr/include/inspircd/clientprotocolmsg.h:622:1: error: expected class-name before ‘{’ token 622 | { | ^ /usr/include/inspircd/clientprotocolmsg.h:628:20: error: expected ‘)’ before ‘*’ token 628 | Invite(User* source, User* target, Channel* chan) | ~ ^ | ) /usr/include/inspircd/clientprotocolmsg.h:640:1: error: expected class-name before ‘{’ token 640 | { | ^ /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Ping::Ping()’: /usr/include/inspircd/clientprotocolmsg.h:645:42: error: expected class-name before ‘(’ token 645 | : ClientProtocol::Message("PING") | ^ /usr/include/inspircd/clientprotocolmsg.h:645:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Ping::Ping(const std::string&)’: /usr/include/inspircd/clientprotocolmsg.h:654:42: error: expected class-name before ‘(’ token 654 | : ClientProtocol::Message("PING") | ^ /usr/include/inspircd/clientprotocolmsg.h:654:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: At global scope: /usr/include/inspircd/clientprotocolmsg.h:664:1: error: expected class-name before ‘{’ token 664 | { | ^ /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Pong::Pong(const std::string&, const std::string&)’: /usr/include/inspircd/clientprotocolmsg.h:670:42: error: expected class-name before ‘(’ token 670 | : ClientProtocol::Message("PONG", ServerInstance->Config->GetServerName()) | ^ /usr/include/inspircd/clientprotocolmsg.h:670:42: error: expected ‘{’ before ‘(’ token /usr/include/inspircd/clientprotocolmsg.h: At global scope: /usr/include/inspircd/clientprotocolmsg.h:684:1: error: expected class-name before ‘{’ token 684 | { | ^ /usr/include/inspircd/clientprotocolmsg.h: In constructor ‘ClientProtocol::Messages::Error::Error(const std::string&)’: /usr/include/inspircd/clientprotocolmsg.h:689:50: error: expected class-name before ‘(’ token 689 | : ClientProtocol::Message("ERROR") | ^ /usr/include/inspircd/clientprotocolmsg.h:689:50: error: expected ‘{’ before ‘(’ token In file included from /tmp/XDrPsg2cTs/dump1.h:20: /usr/include/inspircd/command_parse.h: At global scope: /usr/include/inspircd/command_parse.h:36:61: error: ‘irc’ was not declared in this scope 36 | typedef TR1NS::unordered_map CommandMap; | ^~~ /usr/include/inspircd/command_parse.h:36:95: error: template argument 3 is invalid 36 | typedef TR1NS::unordered_map CommandMap; | ^ /usr/include/inspircd/command_parse.h:44:29: error: ‘LocalUser’ has not been declared 44 | void ProcessCommand(LocalUser* user, std::string& command, CommandBase::Params& parameters); | ^~~~~~~~~ /usr/include/inspircd/command_parse.h:72:102: error: ‘User’ has not been declared 72 | CmdResult CallHandler(const std::string& commandname, const CommandBase::Params& parameters, User* user, Command** cmd = NULL); | ^~~~ /usr/include/inspircd/command_parse.h:117:30: error: ‘User’ has not been declared 117 | static bool LoopCall(User* user, Command* handler, const CommandBase::Params& parameters, unsigned int splithere, int extra = -1, bool usemax = true); | ^~~~ /usr/include/inspircd/command_parse.h:123:28: error: ‘LocalUser’ has not been declared 123 | void ProcessBuffer(LocalUser* user, const std::string& buffer); | ^~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:23: /usr/include/inspircd/configparser.h:28:15: error: ‘flat_map’ in namespace ‘insp’ does not name a template type 28 | insp::flat_map vars; | ^~~~~~~~ /usr/include/inspircd/configparser.h:29:9: error: ‘ConfigDataHash’ does not name a type 29 | ConfigDataHash& output; | ^~~~~~~~~~~~~~ /usr/include/inspircd/configparser.h:30:9: error: ‘ConfigFileCache’ does not name a type 30 | ConfigFileCache& FilesOutput; | ^~~~~~~~~~~~~~~ /usr/include/inspircd/configparser.h:33:32: error: expected ‘)’ before ‘*’ token 33 | ParseStack(ServerConfig* conf); | ~ ^ | ) /usr/include/inspircd/configparser.h:35:24: error: ‘ConfigTag’ has not been declared 35 | void DoInclude(ConfigTag* includeTag, int flags); | ^~~~~~~~~ In file included from /usr/include/inspircd/inspircd.h:88, from /usr/include/inspircd/configreader.h:33, from /tmp/XDrPsg2cTs/dump1.h:24: /usr/include/inspircd/numeric.h: In constructor ‘Numeric::Numeric::Numeric(unsigned int)’: /usr/include/inspircd/numeric.h:50:36: error: call of overloaded ‘Params()’ is ambiguous 50 | , sourceserver(NULL) | ^ /usr/include/inspircd/ctables.h:145:17: note: candidate: ‘CommandBase::Params::Params()’ 145 | Params() { } | ^~~~~~ /usr/include/inspircd/ctables.h:128:17: note: candidate: ‘CommandBase::Params::Params(...)’ 128 | Params(const std::vector& paramsref, const ClientProtocol::TagMap& tagsref) | ^~~~~~ In file included from /usr/include/inspircd/inspircd.h:91: /usr/include/inspircd/users.h: At global scope: /usr/include/inspircd/users.h:273:33: error: incomplete type ‘ModeParser’ used in nested name specifier 273 | std::bitset modes; | ^~~~~~~~~~ /usr/include/inspircd/users.h:273:43: error: template argument 1 is invalid 273 | std::bitset modes; | ^ /usr/include/inspircd/users.h: In member function ‘bool User::IsModeSet(const ModeHandler*) const’: /usr/include/inspircd/users.h:962:45: error: incomplete type ‘ModeParser’ used in nested name specifier 962 | return ((mh->GetId() != ModeParser::MODEID_MAX) && (modes[mh->GetId()])); | ^~~~~~~~~~ /usr/include/inspircd/users.h:962:66: error: invalid types ‘const int[ModeHandler::Id {aka unsigned int}]’ for array subscript 962 | return ((mh->GetId() != ModeParser::MODEID_MAX) && (modes[mh->GetId()])); | ^ /usr/include/inspircd/users.h: In member function ‘void User::SetMode(ModeHandler*, bool)’: /usr/include/inspircd/users.h:974:46: error: incomplete type ‘ModeParser’ used in nested name specifier 974 | if (mh && mh->GetId() != ModeParser::MODEID_MAX) | ^~~~~~~~~~ /usr/include/inspircd/users.h:975:22: error: invalid types ‘int[ModeHandler::Id {aka unsigned int}]’ for array subscript 975 | modes[mh->GetId()] = value; | ^ In file included from /usr/include/inspircd/inspircd.h:104: /usr/include/inspircd/modules.h: At global scope: /usr/include/inspircd/modules.h:639:117: error: ‘ModeParser::ModeProcessFlag’ has not been declared 639 | virtual void OnMode(User* user, User* usertarget, Channel* chantarget, const Modes::ChangeList& changelist, ModeParser::ModeProcessFlag processflags); | ^~~~~~~~~~ /usr/include/inspircd/inspircd.h:239:20: error: field ‘Modes’ has incomplete type ‘ModeParser’ 239 | ModeParser Modes; | ^~~~~ /usr/include/inspircd/mode.h:566:18: note: forward declaration of ‘class ModeParser’ 566 | class CoreExport ModeParser : public fakederef | ^~~~~~~~~~ /usr/include/inspircd/inspircd.h:251:9: error: ‘ConfigReaderThread’ does not name a type 251 | ConfigReaderThread* ConfigThread; | ^~~~~~~~~~~~~~~~~~ /usr/include/inspircd/inspircd.h:265:9: error: ‘BanCacheManager’ does not name a type 265 | BanCacheManager BanCache; | ^~~~~~~~~~~~~~~ /usr/include/inspircd/inspircd.h:607:13: error: no declaration matches ‘void Channel::Write(ClientProtocol::EventProvider&, ClientProtocol::Message&, char, const CUList&)’ 607 | inline void Channel::Write(ClientProtocol::EventProvider& protoevprov, ClientProtocol::Message& msg, char status, const CUList& except_list) | ^~~~~~~ /usr/include/inspircd/channels.h:242:14: note: candidate is: ‘void Channel::Write(int)’ 242 | void Write(ClientProtocol::Event& protoev, char status = 0, const CUList& except_list = CUList()); | ^~~~~ /usr/include/inspircd/channels.h:40:18: note: ‘class Channel’ defined here 40 | class CoreExport Channel : public Extensible | ^~~~~~~ /usr/include/inspircd/inspircd.h: In member function ‘void LocalUser::Send(ClientProtocol::EventProvider&, ClientProtocol::Message&)’: /usr/include/inspircd/inspircd.h:615:37: error: variable ‘ClientProtocol::Event event’ has initializer but incomplete type 615 | ClientProtocol::Event event(protoevprov, msg); | ^~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:45: /usr/include/inspircd/listmode.h: At global scope: /usr/include/inspircd/listmode.h:149:14: error: ‘void ListModeBase::DisplayList(User*, Channel*)’ marked ‘override’, but does not override 149 | void DisplayList(User* user, Channel* channel) CXX11_OVERRIDE; | ^~~~~~~~~~~ /usr/include/inspircd/listmode.h:157:14: error: ‘void ListModeBase::DisplayEmptyList(User*, Channel*)’ marked ‘override’, but does not override 157 | void DisplayEmptyList(User* user, Channel* channel) CXX11_OVERRIDE; | ^~~~~~~~~~~~~~~~ /usr/include/inspircd/listmode.h:166:14: error: ‘void ListModeBase::RemoveMode(Channel*, Modes::ChangeList&)’ marked ‘override’, but does not override 166 | void RemoveMode(Channel* channel, Modes::ChangeList& changelist) CXX11_OVERRIDE; | ^~~~~~~~~~ /usr/include/inspircd/listmode.h:175:20: error: ‘ModeAction ListModeBase::OnModeChange(User*, User*, Channel*, std::string&, bool)’ marked ‘override’, but does not override 175 | ModeAction OnModeChange(User* source, User*, Channel* channel, std::string ¶meter, bool adding) CXX11_OVERRIDE; | ^~~~~~~~~~~~ /usr/include/inspircd/listmode.h:193:22: error: ‘virtual void ListModeBase::OnParameterMissing(User*, User*, Channel*)’ marked ‘override’, but does not override 193 | virtual void OnParameterMissing(User* user, User* dest, Channel* channel) CXX11_OVERRIDE; | ^~~~~~~~~~~~~~~~~~ /usr/include/inspircd/listmode.h: In member function ‘ListModeBase::ModeList* ListModeBase::GetList(Channel*)’: /usr/include/inspircd/listmode.h:222:36: error: cannot convert ‘Channel*’ to ‘const Extensible*’ 222 | ChanData* cd = extItem.get(channel); | ^~~~~~~ | | | Channel* In file included from /usr/include/inspircd/inspircd.h:84: /usr/include/inspircd/extensible.h:215:41: note: initializing argument 1 of ‘T* SimpleExtItem::get(const Extensible*) const [with T = ListModeBase::ChanData; Del = stdalgo::defaultdeleter]’ 215 | inline T* get(const Extensible* container) const | ~~~~~~~~~~~~~~~~~~^~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:52: /usr/include/inspircd/modules/account.h: At global scope: /usr/include/inspircd/modules/account.h:44:45: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 44 | class AccountEventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/account.h: In constructor ‘AccountEventListener::AccountEventListener(Module*)’: /usr/include/inspircd/modules/account.h:48:19: error: class ‘AccountEventListener’ does not have any field named ‘ModuleEventListener’ 48 | : ModuleEventListener(mod, "event/account") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:53: /usr/include/inspircd/modules/away.h: At global scope: /usr/include/inspircd/modules/away.h:31:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 31 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/away.h: In constructor ‘Away::EventListener::EventListener(Module*)’: /usr/include/inspircd/modules/away.h:35:19: error: class ‘Away::EventListener’ does not have any field named ‘ModuleEventListener’ 35 | : ModuleEventListener(mod, "event/away") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/away.h: At global scope: /usr/include/inspircd/modules/away.h:75:26: error: invalid use of incomplete type ‘class Events::ModuleEventProvider’ 75 | : public Events::ModuleEventProvider | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:37:15: note: forward declaration of ‘class Events::ModuleEventProvider’ 37 | class Events::ModuleEventProvider : public ServiceProvider, private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/away.h: In constructor ‘Away::EventProvider::EventProvider(Module*)’: /usr/include/inspircd/modules/away.h:79:19: error: class ‘Away::EventProvider’ does not have any field named ‘ModuleEventProvider’ 79 | : ModuleEventProvider(mod, "event/away") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:55: /usr/include/inspircd/modules/cap.h: At global scope: /usr/include/inspircd/modules/cap.h:54:46: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 54 | class EventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/cap.h: In constructor ‘Cap::EventListener::EventListener(Module*)’: /usr/include/inspircd/modules/cap.h:58:27: error: class ‘Cap::EventListener’ does not have any field named ‘ModuleEventListener’ 58 | : ModuleEventListener(mod, "event/cap") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/cap.h: At global scope: /usr/include/inspircd/modules/cap.h:325:52: error: invalid use of incomplete type ‘class ClientProtocol::Message’ 325 | class MessageBase : public ClientProtocol::Message | ^~~~~~~ In file included from /usr/include/inspircd/inspircd.h:62: /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/cap.h: In constructor ‘Cap::MessageBase::MessageBase(const std::string&)’: /usr/include/inspircd/modules/cap.h:329:43: error: type ‘ClientProtocol::Message’ is not a direct base of ‘Cap::MessageBase’ 329 | : ClientProtocol::Message("CAP", ServerInstance->Config->GetServerName()) | ^~~~~~~ /usr/include/inspircd/modules/cap.h:331:25: error: ‘PushParamPlaceholder’ was not declared in this scope 331 | PushParamPlaceholder(); | ^~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/cap.h:332:25: error: ‘PushParam’ was not declared in this scope 332 | PushParam(subcmd); | ^~~~~~~~~ /usr/include/inspircd/modules/cap.h: In member function ‘void Cap::MessageBase::SetUser(LocalUser*)’: /usr/include/inspircd/modules/cap.h:338:33: error: ‘ReplaceParamRef’ was not declared in this scope 338 | ReplaceParamRef(0, user->nick); | ^~~~~~~~~~~~~~~ /usr/include/inspircd/modules/cap.h:340:33: error: ‘ReplaceParam’ was not declared in this scope 340 | ReplaceParam(0, "*"); | ^~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:56: /usr/include/inspircd/modules/ctctags.h: At global scope: /usr/include/inspircd/modules/ctctags.h:42:52: error: invalid use of incomplete type ‘class ClientProtocol::Message’ 42 | class CTCTags::TagMessage : public ClientProtocol::Message | ^~~~~~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h: In member function ‘void CTCTags::TagMessage::PushTarget(const char*, char)’: /usr/include/inspircd/modules/ctctags.h:51:25: error: ‘PushParam’ was not declared in this scope 51 | PushParam(rawtarget); | ^~~~~~~~~ /usr/include/inspircd/modules/ctctags.h:54:25: error: ‘PushParam’ was not declared in this scope 54 | PushParam(target); | ^~~~~~~~~ /usr/include/inspircd/modules/ctctags.h: In constructor ‘CTCTags::TagMessage::TagMessage(User*, const Channel*, const ClientProtocol::TagMap&, char)’: /usr/include/inspircd/modules/ctctags.h:59:35: error: type ‘ClientProtocol::Message’ is not a direct base of ‘CTCTags::TagMessage’ 59 | : ClientProtocol::Message("TAGMSG", source) | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h:62:17: error: ‘AddTags’ was not declared in this scope 62 | AddTags(Tags); | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h: In constructor ‘CTCTags::TagMessage::TagMessage(User*, const User*, const ClientProtocol::TagMap&)’: /usr/include/inspircd/modules/ctctags.h:66:35: error: type ‘ClientProtocol::Message’ is not a direct base of ‘CTCTags::TagMessage’ 66 | : ClientProtocol::Message("TAGMSG", source) | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h:69:25: error: ‘PushParamRef’ was not declared in this scope 69 | PushParamRef(targetuser->nick); | ^~~~~~~~~~~~ /usr/include/inspircd/modules/ctctags.h:71:25: error: ‘PushParam’ was not declared in this scope 71 | PushParam("*"); | ^~~~~~~~~ /usr/include/inspircd/modules/ctctags.h:72:17: error: ‘AddTags’ was not declared in this scope 72 | AddTags(Tags); | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h: In constructor ‘CTCTags::TagMessage::TagMessage(User*, const char*, const ClientProtocol::TagMap&, char)’: /usr/include/inspircd/modules/ctctags.h:76:35: error: type ‘ClientProtocol::Message’ is not a direct base of ‘CTCTags::TagMessage’ 76 | : ClientProtocol::Message("TAGMSG", source) | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h:79:17: error: ‘AddTags’ was not declared in this scope 79 | AddTags(Tags); | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h: In constructor ‘CTCTags::TagMessage::TagMessage(const char*, const char*, const ClientProtocol::TagMap&, char)’: /usr/include/inspircd/modules/ctctags.h:83:35: error: type ‘ClientProtocol::Message’ is not a direct base of ‘CTCTags::TagMessage’ 83 | : ClientProtocol::Message("TAGMSG", source) | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h:86:17: error: ‘AddTags’ was not declared in this scope 86 | AddTags(Tags); | ^~~~~~~ /usr/include/inspircd/modules/ctctags.h: At global scope: /usr/include/inspircd/modules/ctctags.h:121:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 121 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/ctctags.h:124:61: error: ‘DefaultPriority’ was not declared in this scope; did you mean ‘GetPriority’? 124 | EventListener(Module* mod, unsigned int eventprio = DefaultPriority) | ^~~~~~~~~~~~~~~ | GetPriority /usr/include/inspircd/modules/ctctags.h: In constructor ‘CTCTags::EventListener::EventListener(Module*, unsigned int)’: /usr/include/inspircd/modules/ctctags.h:125:19: error: class ‘CTCTags::EventListener’ does not have any field named ‘ModuleEventListener’ 125 | : ModuleEventListener(mod, "event/tagmsg", eventprio) | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:58: /usr/include/inspircd/modules/exemption.h: At global scope: /usr/include/inspircd/modules/exemption.h:41:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 41 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/exemption.h:44:61: error: ‘DefaultPriority’ was not declared in this scope; did you mean ‘GetPriority’? 44 | EventListener(Module* mod, unsigned int eventprio = DefaultPriority) | ^~~~~~~~~~~~~~~ | GetPriority /usr/include/inspircd/modules/exemption.h: In constructor ‘CheckExemption::EventListener::EventListener(Module*, unsigned int)’: /usr/include/inspircd/modules/exemption.h:45:19: error: class ‘CheckExemption::EventListener’ does not have any field named ‘ModuleEventListener’ 45 | : ModuleEventListener(mod, "event/exemption", eventprio) | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/exemption.h: At global scope: /usr/include/inspircd/modules/exemption.h:61:26: error: invalid use of incomplete type ‘class Events::ModuleEventProvider’ 61 | : public Events::ModuleEventProvider | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:37:15: note: forward declaration of ‘class Events::ModuleEventProvider’ 37 | class Events::ModuleEventProvider : public ServiceProvider, private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/exemption.h: In constructor ‘CheckExemption::EventProvider::EventProvider(Module*)’: /usr/include/inspircd/modules/exemption.h:65:19: error: class ‘CheckExemption::EventProvider’ does not have any field named ‘ModuleEventProvider’ 65 | : ModuleEventProvider(mod, "event/exemption") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/exemption.h: In function ‘ModResult CheckExemption::Call(const EventProvider&, User*, Channel*, const std::string&)’: /usr/include/inspircd/event.h:211:21: error: ‘const class CheckExemption::EventProvider’ has no member named ‘GetModule’ 211 | if (!(prov).GetModule() || !(prov).GetModule()->dying) \ | ^~~~~~~~~ /usr/include/inspircd/modules/exemption.h:73:9: note: in expansion of macro ‘FIRST_MOD_RESULT_CUSTOM’ 73 | FIRST_MOD_RESULT_CUSTOM(prov, CheckExemption::EventListener, OnCheckExemption, result, (user, chan, restriction)); | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:211:44: error: ‘const class CheckExemption::EventProvider’ has no member named ‘GetModule’ 211 | if (!(prov).GetModule() || !(prov).GetModule()->dying) \ | ^~~~~~~~~ /usr/include/inspircd/modules/exemption.h:73:9: note: in expansion of macro ‘FIRST_MOD_RESULT_CUSTOM’ 73 | FIRST_MOD_RESULT_CUSTOM(prov, CheckExemption::EventListener, OnCheckExemption, result, (user, chan, restriction)); | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:213:54: error: invalid use of incomplete type ‘class Events::ModuleEventProvider’ 213 | const ::Events::ModuleEventProvider::SubscriberList& _handlers = (prov).GetSubscribers(); \ | ^~~~~~~~~~~~~~ /usr/include/inspircd/modules/exemption.h:73:9: note: in expansion of macro ‘FIRST_MOD_RESULT_CUSTOM’ 73 | FIRST_MOD_RESULT_CUSTOM(prov, CheckExemption::EventListener, OnCheckExemption, result, (user, chan, restriction)); | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:37:15: note: forward declaration of ‘class Events::ModuleEventProvider’ 37 | class Events::ModuleEventProvider : public ServiceProvider, private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:214:53: error: ‘Events::ModuleEventProvider::SubscriberList’ has not been declared 214 | for (::Events::ModuleEventProvider::SubscriberList::const_iterator _i = _handlers.begin(); _i != _handlers.end(); ++_i) \ | ^~~~~~~~~~~~~~ /usr/include/inspircd/modules/exemption.h:73:9: note: in expansion of macro ‘FIRST_MOD_RESULT_CUSTOM’ 73 | FIRST_MOD_RESULT_CUSTOM(prov, CheckExemption::EventListener, OnCheckExemption, result, (user, chan, restriction)); | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:214:108: error: ‘_i’ was not declared in this scope 214 | for (::Events::ModuleEventProvider::SubscriberList::const_iterator _i = _handlers.begin(); _i != _handlers.end(); ++_i) \ | ^~ /usr/include/inspircd/modules/exemption.h:73:9: note: in expansion of macro ‘FIRST_MOD_RESULT_CUSTOM’ 73 | FIRST_MOD_RESULT_CUSTOM(prov, CheckExemption::EventListener, OnCheckExemption, result, (user, chan, restriction)); | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:214:114: error: ‘_handlers’ was not declared in this scope; did you mean ‘sa_handler’? 214 | for (::Events::ModuleEventProvider::SubscriberList::const_iterator _i = _handlers.begin(); _i != _handlers.end(); ++_i) \ | ^~~~~~~~~ /usr/include/inspircd/modules/exemption.h:73:9: note: in expansion of macro ‘FIRST_MOD_RESULT_CUSTOM’ 73 | FIRST_MOD_RESULT_CUSTOM(prov, CheckExemption::EventListener, OnCheckExemption, result, (user, chan, restriction)); | ^~~~~~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:217:48: error: ‘class CheckExemption::EventListener’ has no member named ‘GetModule’ 217 | const Module* _m = _t->GetModule(); \ | ^~~~~~~~~ /usr/include/inspircd/modules/exemption.h:73:9: note: in expansion of macro ‘FIRST_MOD_RESULT_CUSTOM’ 73 | FIRST_MOD_RESULT_CUSTOM(prov, CheckExemption::EventListener, OnCheckExemption, result, (user, chan, restriction)); | ^~~~~~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:61: /usr/include/inspircd/modules/httpd.h: At global scope: /usr/include/inspircd/modules/httpd.h:305:45: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 305 | class HTTPACLEventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/httpd.h: In constructor ‘HTTPACLEventListener::HTTPACLEventListener(Module*)’: /usr/include/inspircd/modules/httpd.h:309:19: error: class ‘HTTPACLEventListener’ does not have any field named ‘ModuleEventListener’ 309 | : ModuleEventListener(mod, "event/http-acl") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/httpd.h: At global scope: /usr/include/inspircd/modules/httpd.h:316:49: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 316 | class HTTPRequestEventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/httpd.h: In constructor ‘HTTPRequestEventListener::HTTPRequestEventListener(Module*)’: /usr/include/inspircd/modules/httpd.h:320:19: error: class ‘HTTPRequestEventListener’ does not have any field named ‘ModuleEventListener’ 320 | : ModuleEventListener(mod, "event/http-request") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:63: /usr/include/inspircd/modules/ircv3.h: At global scope: /usr/include/inspircd/modules/ircv3.h:73:46: error: invalid use of incomplete type ‘class ClientProtocol::MessageTagProvider’ 73 | class IRCv3::CapTag : public ClientProtocol::MessageTagProvider | ^~~~~~~~~~~~~~~~~~ /usr/include/inspircd/typedefs.h:60:15: note: forward declaration of ‘class ClientProtocol::MessageTagProvider’ 60 | class MessageTagProvider; | ^~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:64: /usr/include/inspircd/modules/ircv3_batch.h:46:75: error: invalid use of incomplete type ‘class ClientProtocol::MessageTagProvider’ 46 | class IRCv3::Batch::Manager : public DataProvider, public ClientProtocol::MessageTagProvider | ^~~~~~~~~~~~~~~~~~ /usr/include/inspircd/typedefs.h:60:15: note: forward declaration of ‘class ClientProtocol::MessageTagProvider’ 60 | class MessageTagProvider; | ^~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/ircv3_batch.h: In constructor ‘IRCv3::Batch::Manager::Manager(Module*)’: /usr/include/inspircd/modules/ircv3_batch.h:54:35: error: type ‘ClientProtocol::MessageTagProvider’ is not a direct base of ‘IRCv3::Batch::Manager’ 54 | , ClientProtocol::MessageTagProvider(mod) | ^~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/ircv3_batch.h: In member function ‘void IRCv3::Batch::Batch::AddToBatch(ClientProtocol::Message&)’: /usr/include/inspircd/modules/ircv3_batch.h:135:25: error: invalid use of incomplete type ‘class ClientProtocol::Message’ 135 | msg.AddTag("batch", manager, reftagstr, this); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:65: /usr/include/inspircd/modules/ircv3_replies.h: At global scope: /usr/include/inspircd/modules/ircv3_replies.h:55:39: error: field ‘evprov’ has incomplete type ‘ClientProtocol::EventProvider’ 55 | ClientProtocol::EventProvider evprov; | ^~~~~~ /usr/include/inspircd/typedefs.h:57:15: note: forward declaration of ‘class ClientProtocol::EventProvider’ 57 | class EventProvider; | ^~~~~~~~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h: In member function ‘void IRCv3::Replies::Reply::SendInternal(LocalUser*, ClientProtocol::Message&)’: /usr/include/inspircd/modules/ircv3_replies.h:63:42: error: variable ‘ClientProtocol::Event ev’ has initializer but incomplete type 63 | ClientProtocol::Event ev(evprov, msg); | ^~~~~~ /usr/include/inspircd/modules/ircv3_replies.h: In member function ‘void IRCv3::Replies::Reply::Send(LocalUser*, Command*, const std::string&, const std::string&)’: /usr/include/inspircd/modules/ircv3_replies.h:96:45: error: variable ‘ClientProtocol::Message msg’ has initializer but incomplete type 96 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/modules/ircv3_replies.h: In member function ‘void IRCv3::Replies::Reply::Send(LocalUser*, Command*, const std::string&, const T1&, const std::string&)’: /usr/include/inspircd/modules/ircv3_replies.h:109:41: error: ‘msg’ has incomplete type 109 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:109:41: error: ‘msg’ has incomplete type 109 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:109:41: error: ‘msg’ has incomplete type 109 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:109:41: error: ‘msg’ has incomplete type 109 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:109:41: error: ‘msg’ has incomplete type 109 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h: In member function ‘void IRCv3::Replies::Reply::Send(LocalUser*, Command*, const std::string&, const T1&, const T2&, const std::string&)’: /usr/include/inspircd/modules/ircv3_replies.h:124:41: error: ‘msg’ has incomplete type 124 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:124:41: error: ‘msg’ has incomplete type 124 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:124:41: error: ‘msg’ has incomplete type 124 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:124:41: error: ‘msg’ has incomplete type 124 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:124:41: error: ‘msg’ has incomplete type 124 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:124:41: error: ‘msg’ has incomplete type 124 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h: In member function ‘void IRCv3::Replies::Reply::Send(LocalUser*, Command*, const std::string&, const T1&, const T2&, const T3&, const std::string&)’: /usr/include/inspircd/modules/ircv3_replies.h:140:41: error: ‘msg’ has incomplete type 140 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:140:41: error: ‘msg’ has incomplete type 140 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:140:41: error: ‘msg’ has incomplete type 140 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:140:41: error: ‘msg’ has incomplete type 140 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:140:41: error: ‘msg’ has incomplete type 140 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:140:41: error: ‘msg’ has incomplete type 140 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:140:41: error: ‘msg’ has incomplete type 140 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h: In member function ‘void IRCv3::Replies::Reply::Send(LocalUser*, Command*, const std::string&, const T1&, const T2&, const T3&, const T4&, const std::string&)’: /usr/include/inspircd/modules/ircv3_replies.h:157:41: error: ‘msg’ has incomplete type 157 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:157:41: error: ‘msg’ has incomplete type 157 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:157:41: error: ‘msg’ has incomplete type 157 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:157:41: error: ‘msg’ has incomplete type 157 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:157:41: error: ‘msg’ has incomplete type 157 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:157:41: error: ‘msg’ has incomplete type 157 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:157:41: error: ‘msg’ has incomplete type 157 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:157:41: error: ‘msg’ has incomplete type 157 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h: In member function ‘void IRCv3::Replies::Reply::Send(LocalUser*, Command*, const std::string&, const T1&, const T2&, const T3&, const T4&, const T5&, const std::string&)’: /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ /usr/include/inspircd/modules/ircv3_replies.h:175:41: error: ‘msg’ has incomplete type 175 | ClientProtocol::Message msg(cmd.c_str(), ServerInstance->Config->GetServerName()); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:66: /usr/include/inspircd/modules/ircv3_servertime.h: In member function ‘void IRCv3::ServerTime::Manager::Set(ClientProtocol::Message&, const std::string&)’: /usr/include/inspircd/modules/ircv3_servertime.h:79:17: error: invalid use of incomplete type ‘class ClientProtocol::Message’ 79 | msg.AddTag("time", tagprov, timestr); | ^~~ /usr/include/inspircd/typedefs.h:58:15: note: forward declaration of ‘class ClientProtocol::Message’ 58 | class Message; | ^~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:69: /usr/include/inspircd/modules/names.h: At global scope: /usr/include/inspircd/modules/names.h:29:45: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 29 | class Names::EventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/names.h: In constructor ‘Names::EventListener::EventListener(Module*)’: /usr/include/inspircd/modules/names.h:33:19: error: class ‘Names::EventListener’ does not have any field named ‘ModuleEventListener’ 33 | : ModuleEventListener(mod, "event/names") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:71: /usr/include/inspircd/modules/reload.h: At global scope: /usr/include/inspircd/modules/reload.h:58:46: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 58 | class EventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/reload.h: In constructor ‘ReloadModule::EventListener::EventListener(Module*)’: /usr/include/inspircd/modules/reload.h:62:27: error: class ‘ReloadModule::EventListener’ does not have any field named ‘ModuleEventListener’ 62 | : ModuleEventListener(mod, "event/reloadmodule") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:72: /usr/include/inspircd/modules/sasl.h: At global scope: /usr/include/inspircd/modules/sasl.h:27:42: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 27 | class SASLEventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/sasl.h: In constructor ‘SASLEventListener::SASLEventListener(Module*)’: /usr/include/inspircd/modules/sasl.h:31:19: error: class ‘SASLEventListener’ does not have any field named ‘ModuleEventListener’ 31 | : ModuleEventListener(mod, "event/sasl") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:73: /usr/include/inspircd/modules/server.h: At global scope: /usr/include/inspircd/modules/server.h:43:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 43 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/server.h: In constructor ‘ServerProtocol::BroadcastEventListener::BroadcastEventListener(Module*)’: /usr/include/inspircd/modules/server.h:47:19: error: class ‘ServerProtocol::BroadcastEventListener’ does not have any field named ‘ModuleEventListener’ 47 | : ModuleEventListener(mod, "event/server-broadcast") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/server.h: At global scope: /usr/include/inspircd/modules/server.h:61:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 61 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/server.h: In constructor ‘ServerProtocol::LinkEventListener::LinkEventListener(Module*)’: /usr/include/inspircd/modules/server.h:65:19: error: class ‘ServerProtocol::LinkEventListener’ does not have any field named ‘ModuleEventListener’ 65 | : ModuleEventListener(mod, "event/server-link") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/server.h: At global scope: /usr/include/inspircd/modules/server.h:92:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 92 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/server.h: In constructor ‘ServerProtocol::MessageEventListener::MessageEventListener(Module*)’: /usr/include/inspircd/modules/server.h:96:19: error: class ‘ServerProtocol::MessageEventListener’ does not have any field named ‘ModuleEventListener’ 96 | : ModuleEventListener(mod, "event/server-message") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/server.h: At global scope: /usr/include/inspircd/modules/server.h:116:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 116 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/server.h: In constructor ‘ServerProtocol::SyncEventListener::SyncEventListener(Module*)’: /usr/include/inspircd/modules/server.h:120:19: error: class ‘ServerProtocol::SyncEventListener’ does not have any field named ‘ModuleEventListener’ 120 | : ModuleEventListener(mod, "event/server-sync") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:77: /usr/include/inspircd/modules/stats.h: At global scope: /usr/include/inspircd/modules/stats.h:32:45: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 32 | class Stats::EventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/stats.h: In constructor ‘Stats::EventListener::EventListener(Module*)’: /usr/include/inspircd/modules/stats.h:36:19: error: class ‘Stats::EventListener’ does not have any field named ‘ModuleEventListener’ 36 | : ModuleEventListener(mod, "event/stats") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:78: /usr/include/inspircd/modules/webirc.h: At global scope: /usr/include/inspircd/modules/webirc.h:32:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 32 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/webirc.h: In constructor ‘WebIRC::EventListener::EventListener(Module*)’: /usr/include/inspircd/modules/webirc.h:36:19: error: class ‘WebIRC::EventListener’ does not have any field named ‘ModuleEventListener’ 36 | : ModuleEventListener(mod, "event/webirc") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:79: /usr/include/inspircd/modules/who.h: At global scope: /usr/include/inspircd/modules/who.h:33:43: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 33 | class Who::EventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/who.h: In constructor ‘Who::EventListener::EventListener(Module*)’: /usr/include/inspircd/modules/who.h:37:19: error: class ‘Who::EventListener’ does not have any field named ‘ModuleEventListener’ 37 | : ModuleEventListener(mod, "event/who") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/who.h: At global scope: /usr/include/inspircd/modules/who.h:54:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 54 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/who.h: In constructor ‘Who::MatchEventListener::MatchEventListener(Module*)’: /usr/include/inspircd/modules/who.h:58:19: error: class ‘Who::MatchEventListener’ does not have any field named ‘ModuleEventListener’ 58 | : ModuleEventListener(mod, "event/who-match") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/who.h: At global scope: /usr/include/inspircd/modules/who.h:73:26: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 73 | : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/who.h: In constructor ‘Who::VisibleEventListener::VisibleEventListener(Module*)’: /usr/include/inspircd/modules/who.h:77:19: error: class ‘Who::VisibleEventListener’ does not have any field named ‘ModuleEventListener’ 77 | : ModuleEventListener(mod, "event/who-visible") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:80: /usr/include/inspircd/modules/whois.h: At global scope: /usr/include/inspircd/modules/whois.h:63:45: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 63 | class Whois::EventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/whois.h: In constructor ‘Whois::EventListener::EventListener(Module*)’: /usr/include/inspircd/modules/whois.h:67:19: error: class ‘Whois::EventListener’ does not have any field named ‘ModuleEventListener’ 67 | : ModuleEventListener(mod, "event/whois") | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/whois.h: At global scope: /usr/include/inspircd/modules/whois.h:77:49: error: invalid use of incomplete type ‘class Events::ModuleEventListener’ 77 | class Whois::LineEventListener : public Events::ModuleEventListener | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/event.h:123:15: note: forward declaration of ‘class Events::ModuleEventListener’ 123 | class Events::ModuleEventListener : private dynamic_reference_base::CaptureHook | ^~~~~~~~~~~~~~~~~~~ /usr/include/inspircd/modules/whois.h: In constructor ‘Whois::LineEventListener::LineEventListener(Module*)’: /usr/include/inspircd/modules/whois.h:81:19: error: class ‘Whois::LineEventListener’ does not have any field named ‘ModuleEventListener’ 81 | : ModuleEventListener(mod, "event/whoisline") | ^~~~~~~~~~~~~~~~~~~ In file included from /tmp/XDrPsg2cTs/dump1.h:95: /usr/include/inspircd/threadengines/threadengine_win32.h: At global scope: /usr/include/inspircd/threadengines/threadengine_win32.h:41:18: error: redefinition of ‘class ThreadEngine’ 41 | class CoreExport ThreadEngine | ^~~~~~~~~~~~ In file included from /usr/include/inspircd/compat.h:102: /usr/include/inspircd/threadengines/threadengine_pthread.h:40:18: note: previous definition of ‘class ThreadEngine’ 40 | class CoreExport ThreadEngine | ^~~~~~~~~~~~ /usr/include/inspircd/threadengines/threadengine_win32.h:82:18: error: redefinition of ‘class Mutex’ 82 | class CoreExport Mutex | ^~~~~ /usr/include/inspircd/threadengines/threadengine_pthread.h:79:18: note: previous definition of ‘class Mutex’ 79 | class CoreExport Mutex | ^~~~~ /usr/include/inspircd/threadengines/threadengine_win32.h:105:7: error: redefinition of ‘class ThreadQueueData’ 105 | class ThreadQueueData : public Mutex | ^~~~~~~~~~~~~~~ /usr/include/inspircd/threadengines/threadengine_pthread.h:110:7: note: previous definition of ‘class ThreadQueueData’ 110 | class ThreadQueueData : public Mutex | ^~~~~~~~~~~~~~~ /usr/include/inspircd/threadengines/threadengine_win32.h:134:7: error: redefinition of ‘class ThreadSignalData’ 134 | class ThreadSignalData | ^~~~~~~~~~~~~~~~ /usr/include/inspircd/threadengines/threadengine_pthread.h:136:7: note: previous definition of ‘class ThreadSignalData’ 136 | class ThreadSignalData | ^~~~~~~~~~~~~~~~