Bug #2169
Revision 6ac789da : Linux compile error : Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:45:9: error: expected identifier before numeric constant
100%
Description
Here's the full output:
[ 0%] Automatic moc and rcc for target libcore [ 0%] Built target libcore_automoc [ 3%] Built target libcore [ 3%] Automatic moc and rcc for target libshell [ 3%] Built target libshell_automoc [ 4%] Built target libshell [ 4%] Automatic moc and rcc for target liblegacy [ 4%] Built target liblegacy_automoc [ 8%] Built target liblegacy [ 8%] Automatic moc and rcc for target libgui [ 8%] Built target libgui_automoc [ 8%] Automatic rcc for target assimp [ 8%] Built target assimp_automoc [ 23%] Built target assimp [ 24%] Building CXX object sdk/libgui/CMakeFiles/libgui.dir/src_input_turbo.cpp.o In file included from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../NumberValue:1:0, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/vector.h:36, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/Vector:1, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseevent.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseeventsource.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/MouseEventSource:1, from /home/chris/sources/doomsday-build/sdk/libgui/src_input_turbo.cpp:175: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:45:9: error: expected identifier before numeric constant False = 0, ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:45:9: error: expected '}' before numeric constant /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:45:9: error: expected unqualified-id before numeric constant /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:56:1: error: expected unqualified-id before 'public' public: ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:58:33: error: expected ')' before 'initialInteger' explicit NumberValue(dint64 initialInteger); ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:59:34: error: expected ')' before 'initialUnsignedInteger' explicit NumberValue(duint64 initialUnsignedInteger); ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:60:33: error: expected ')' before 'initialInteger' explicit NumberValue(dint32 initialInteger, SemanticHints semantic = Generic); ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:61:34: error: expected ')' before 'initialUnsignedInteger' explicit NumberValue(duint32 initialUnsignedInteger, SemanticHints semantic = Generic); ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:62:26: error: expected unqualified-id before 'unsigned' explicit NumberValue(unsigned long initialUnsignedInteger, SemanticHints semantic = Generic); ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:62:26: error: expected ')' before 'unsigned' /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:63:26: error: expected unqualified-id before 'bool' explicit NumberValue(bool initialBoolean); ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:63:26: error: expected ')' before 'bool' /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:66:35: error: non-member function 'de::SemanticHints de::semanticHints()' cannot have cv-qualifier SemanticHints semanticHints() const; ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:72:15: error: non-member function 'Type de::as()' cannot have cv-qualifier Type as() const { return Type(_value); } ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h: In function 'Type de::as()': /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:72:35: error: '_value' was not declared in this scope Type as() const { return Type(_value); } ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h: At global scope: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:74:5: error: 'Text' does not name a type Text typeId() const; ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:75:24: error: non-member function 'de::Value* de::duplicate()' cannot have cv-qualifier Value *duplicate() const; ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:76:5: error: 'Number' does not name a type Number asNumber() const; ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:77:5: error: 'Text' does not name a type Text asText() const; ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:78:19: error: non-member function 'bool de::isTrue()' cannot have cv-qualifier bool isTrue() const; ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:79:38: error: non-member function 'de::dint de::compare(const de::Value&)' cannot have cv-qualifier dint compare(Value const &value) const; ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:88:35: error: non-member function 'void de::operator>>(de::Writer&)' cannot have cv-qualifier void operator >> (Writer &to) const; ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:88:35: error: 'void de::operator>>(de::Writer&)' must take exactly two arguments /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:89:35: error: 'void de::operator<<(de::Reader&)' must take exactly two arguments void operator << (Reader &from); ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:91:1: error: expected unqualified-id before 'private' private: ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:25: error: 'NumberValue' was not declared in this scope Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:25: note: suggested alternative: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:39:7: note: 'de::NumberValue' class DENG2_PUBLIC NumberValue : public Value ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:62: error: template argument 1 is invalid Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:73: error: invalid type in declaration before '(' token Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:73: error: declaration of 'operator|' as non-function /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:74: error: 'NumberValue' has not been declared Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:116: error: 'NumberValue' has not been declared Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ In file included from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../NumberValue:1:0, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/vector.h:36, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/Vector:1, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseevent.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseeventsource.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/MouseEventSource:1, from /home/chris/sources/doomsday-build/sdk/libgui/src_input_turbo.cpp:175: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:258: error: 'NumberValue' was not declared in this scope Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:258: note: suggested alternative: In file included from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../NumberValue:1:0, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/vector.h:36, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/Vector:1, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseevent.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseeventsource.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/MouseEventSource:1, from /home/chris/sources/doomsday-build/sdk/libgui/src_input_turbo.cpp:175: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:39:7: note: 'de::NumberValue' class DENG2_PUBLIC NumberValue : public Value ^ In file included from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../NumberValue:1:0, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/vector.h:36, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/Vector:1, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseevent.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseeventsource.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/MouseEventSource:1, from /home/chris/sources/doomsday-build/sdk/libgui/src_input_turbo.cpp:175: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:295: error: template argument 1 is invalid Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:306: error: invalid type in declaration before '(' token Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:306: error: declaration of 'operator|' as non-function /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:307: error: 'NumberValue' has not been declared Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:356: error: 'NumberValue' was not declared in this scope Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:356: note: suggested alternative: In file included from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../NumberValue:1:0, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/vector.h:36, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/Vector:1, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseevent.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseeventsource.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/MouseEventSource:1, from /home/chris/sources/doomsday-build/sdk/libgui/src_input_turbo.cpp:175: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:39:7: note: 'de::NumberValue' class DENG2_PUBLIC NumberValue : public Value ^ In file included from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../NumberValue:1:0, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/vector.h:36, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/Vector:1, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseevent.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseeventsource.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/MouseEventSource:1, from /home/chris/sources/doomsday-build/sdk/libgui/src_input_turbo.cpp:175: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:393: error: template argument 1 is invalid Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:473: error: declaration of 'operator|' as non-function Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:473: error: 'NumberValue' has not been declared /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:96:515: error: expected primary-expression before 'int' Q_DECLARE_OPERATORS_FOR_FLAGS(NumberValue::SemanticHints) ^ In file included from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../NumberValue:1:0, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/vector.h:36, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/Vector:1, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseevent.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/input/mouseeventsource.h:23, from /home/chris/sources/Doomsday-Engine/doomsday/sdk/libgui/include/de/MouseEventSource:1, from /home/chris/sources/doomsday-build/sdk/libgui/src_input_turbo.cpp:175: /home/chris/sources/Doomsday-Engine/doomsday/sdk/libcore/include/de/core/../data/numbervalue.h:98:1: error: expected declaration before '}' token } // namespace de ^ /home/chris/sources/doomsday-build/sdk/libgui/src_input_turbo.cpp:33:12: warning: 'int x11ScancodeToDDKey(int)' declared 'static' but never defined [-Wunused-function] static int x11ScancodeToDDKey(int scancode); ^ sdk/libgui/CMakeFiles/libgui.dir/build.make:305: recipe for target 'sdk/libgui/CMakeFiles/libgui.dir/src_input_turbo.cpp.o' failed make[2]: *** [sdk/libgui/CMakeFiles/libgui.dir/src_input_turbo.cpp.o] Error 1 CMakeFiles/Makefile2:420: recipe for target 'sdk/libgui/CMakeFiles/libgui.dir/all' failed make[1]: *** [sdk/libgui/CMakeFiles/libgui.dir/all] Error 2 Makefile:149: recipe for target 'all' failed make: *** [all] Error 2
History
#1 Updated by skyjake over 8 years ago
- Tags set to CMake
- Assignee set to skyjake
- Target version set to 49
As a workaround, you should disable the DENG_ENABLE_TURBO build option. You can read about it here: http://wiki.dengine.net/w/Turbo_mode_(build_option)
I'll try a Linux build myself and see if I can get similar results.
#2 Updated by skyjake over 8 years ago
This does not occur on my system and build config (Ubuntu 16.04 LTS)... Could you please try a new build with b835690?
#3 Updated by sermayen over 8 years ago
6ac789da compiled fine with -DDENG_ENABLE_TURBO=NO, and b835690 with -DDENG_ENABLE_TURBO=ON too. Thanks for the fast reply & fix ! :)
#4 Updated by skyjake over 8 years ago
- Category set to Defect
- Status changed from New to Closed
- % Done changed from 0 to 100
Great!
#5 Updated by sermayen over 8 years ago
It seems i was a little too fast with my reply... Compilation ran fine but i didn't run the resulting binary afterwards.. I'm getting a segfault. Here's a backtrace :
Program received signal SIGSEGV, Segmentation fault. 0x00007ffff56fed93 in QString::lastIndexOf(QChar, int, Qt::CaseSensitivity) const () from /usr/lib64/libQt5Core.so.5 (gdb) bt #0 0x00007ffff56fed93 in QString::lastIndexOf(QChar, int, Qt::CaseSensitivity) const () from /usr/lib64/libQt5Core.so.5 #1 0x00007ffff5cba972 in de::String::fileName(QChar) const () from /usr/local/games/doom/doomsday/lib64/libdeng_core.so.2.0 #2 0x00007ffff5cd7f83 in de::Record::addArray(de::String const&, de::ArrayValue*) () from /usr/local/games/doom/doomsday/lib64/libdeng_core.so.2.0 #3 0x00007ffff77a6029 in DEDRegister::DEDRegister(de::Record&) () from /usr/local/games/doom/doomsday/lib64/libdeng_doomsday.so.2.0 #4 0x00007ffff77a76e0 in ded_s::ded_s() () from /usr/local/games/doom/doomsday/lib64/libdeng_doomsday.so.2.0 #5 0x00007ffff7767f80 in _GLOBAL__sub_I_src_defs_turbo.cpp () from /usr/local/games/doom/doomsday/lib64/libdeng_doomsday.so.2.0 #6 0x00007ffff7dea25a in ?? () from /lib64/ld-linux-x86-64.so.2 #7 0x00007ffff7dea36b in ?? () from /lib64/ld-linux-x86-64.so.2 #8 0x00007ffff7ddbc7a in ?? () from /lib64/ld-linux-x86-64.so.2 #9 0x0000000000000001 in ?? () #10 0x00007fffffffde76 in ?? () #11 0x0000000000000000 in ?? ()
Maybe this could be related to a recent Qt Update on my system. I'm running qt 5.6.1 at the moment, i think i upgraded from 5.5.1 or so
#6 Updated by skyjake over 8 years ago
- Status changed from Closed to In Progress
- % Done changed from 100 to 50
It could also be due to my recent refactoring of the DED ownership. I'll run a few tests.
#7 Updated by skyjake over 8 years ago
- Description updated (diff)
- Status changed from In Progress to Closed
- % Done changed from 50 to 100
95e0660 should take care of the crash.
#8 Updated by skyjake over 7 years ago
- Target version deleted (
49)