Skip to content

Fix mismatched usage length, build fail on g++

The length of const option::Descriptor usage[] is intended to be inferred based on the initialisation in Source/main.cpp, however, the extern declaration in Source/Game.hpp hard-codes it to 13.

Remove the hard-coded 13 in the extern declaration, in favour of the inferred length.

This also fixes the follwoing build failure with g++ (Debian 4.9.2-10) 4.9.2:

(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::index’
     };
     ^
(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::index’ [-Wmissing-field-initializers]
(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::type’
(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::type’ [-Wmissing-field-initializers]
(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::shortopt’
(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::shortopt’ [-Wmissing-field-initializers]
(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::longopt’
(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::longopt’ [-Wmissing-field-initializers]
(...)/Source/main.cpp:602:5: error: uninitialized const member ‘option::Descriptor::check_arg’
(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::check_arg’ [-Wmissing-field-initializers]
(...)/Source/main.cpp:602:5: warning: missing initializer for member ‘option::Descriptor::help’ [-Wmissing-field-initializers]
CMakeFiles/lugaru.dir/build.make:54: recipe for target 'CMakeFiles/lugaru.dir/Source/main.cpp.o' failed

Signed-off-by: Martin Erik Werner martinerikwerner@gmail.com

Merge request reports