From efdea080a27d51b522f2414873e5c112201b71e6 Mon Sep 17 00:00:00 2001 From: Robin Haberkorn Date: Mon, 18 Mar 2013 20:47:29 +0100 Subject: declare all global inter-dependant objects in main.cpp and get rid of init_priority attribute * we cannot use weak symbols in MinGW, so we avoid init_priority for symbol initialization by compiling the empty definitions into sciteco-minimal but the real ones into sciteco (had to add new file symbols-minimal.cpp) * this fixes compilation/linking on LLVM Clang AND Dragonegg since their init_priority attribute is broken! this will likely be fixed in the near future but broken versions will be around for some time --- src/symbols.h | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'src/symbols.h') diff --git a/src/symbols.h b/src/symbols.h index 1e94e98..f2cbc16 100644 --- a/src/symbols.h +++ b/src/symbols.h @@ -22,11 +22,13 @@ #include class SymbolList { +public: struct Entry { const gchar *name; gint value; }; +private: const Entry *entries; gint size; int (*cmp_fnc)(const char *, const char *, size_t); @@ -50,12 +52,9 @@ public: gint lookup(const gchar *name, const gchar *prefix = ""); GList *get_glist(void); - - /* generated per Scintilla SymbolList */ - friend class SymbolListInitializer_scintilla; - friend class SymbolListInitializer_scilexer; }; +/* objects declared in symbols-minimal.cpp or auto-generated code */ namespace Symbols { extern SymbolList scintilla; extern SymbolList scilexer; -- cgit v1.2.3