warning: No toolsets are configured. warning: Configuring default toolset "gcc". warning: If the default is wrong, your build may not work correctly. warning: Use the "toolset=xxxxx" option to override our guess. warning: For more configuration options, please consult warning: http://boost.org/boost-build2/doc/html/bbv2/advanced/configuration.html ...patience... ...found 2441 targets... ...updating 85 targets... gcc.compile.c++ bin/gcc-6.3.0/release/src/main/main.o In file included from src/main/main.cpp:25:0: src/capture/cryptofile.hpp: In member function ‘void CryptoContext::get_derived_key(uint8_t (&)[32], const_bytes_view)’: src/capture/cryptofile.hpp:206:74: error: no matching function for call to ‘CryptoContext::load_trace_key(uint8_t [32], std::vector&)’ this->load_trace_key(this->master_key, this->master_derivator); ^ src/capture/cryptofile.hpp:166:10: note: candidate: void CryptoContext::load_trace_key(uint8_t (&)[32], const_bytes_view) void load_trace_key(uint8_t (&buffer)[MD_HASH::DIGEST_LENGTH], const_bytes_view derivator) ^~~~~~~~~~~~~~ src/capture/cryptofile.hpp:166:10: note: no known conversion for argument 2 from ‘std::vector’ to ‘const_bytes_view’ In file included from projects/redemption_configs/redemption_src/configs/io.hpp:32:0, from projects/redemption_configs/redemption_src/configs/config.hpp:26, from src/main/main.cpp:29: src/utils/sugar/algostring.hpp: At global scope: src/utils/sugar/algostring.hpp:113:74: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(String&& str, Strings const&... strs) ^ src/utils/sugar/algostring.hpp:122:79: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(std::string&& str, Strings const&... strs) ^ In file included from src/main/main.cpp:29:0: projects/redemption_configs/redemption_src/configs/config.hpp: In constructor ‘Inifile::FieldReference::FieldReference(Inifile::FieldReferenceBase::InternalInifile&, Inifile::authid_t)’: projects/redemption_configs/redemption_src/configs/config.hpp:323:42: warning: useless cast to type ‘Inifile::FieldReferenceBase::InternalInifile& {aka Inifile&}’ [-Wuseless-cast] using FieldReferenceBase::FieldReferenceBase; ^~~~~~~~~~~~~~~~~~ projects/redemption_configs/redemption_src/configs/config.hpp: In member function ‘Inifile::FieldReference Inifile::get_acl_field(Inifile::authid_t)’: projects/redemption_configs/redemption_src/configs/config.hpp:331:30: note: synthesized method ‘Inifile::FieldReference::FieldReference(Inifile::FieldReferenceBase::InternalInifile&, Inifile::authid_t)’ first required here return {*this, authid}; ^ projects/redemption_configs/redemption_src/configs/config.hpp: In constructor ‘Inifile::FieldConstReference::FieldConstReference(Inifile::FieldReferenceBase::InternalInifile&, Inifile::authid_t)’: projects/redemption_configs/redemption_src/configs/config.hpp:348:41: warning: useless cast to type ‘Inifile::FieldReferenceBase::InternalInifile& {aka const Inifile&}’ [-Wuseless-cast] using FieldReferenceBase::FieldReferenceBase; ^~~~~~~~~~~~~~~~~~ projects/redemption_configs/redemption_src/configs/config.hpp: In member function ‘Inifile::FieldConstReference Inifile::FieldsChanged::iterator::operator*() const’: projects/redemption_configs/redemption_src/configs/config.hpp:366:46: note: synthesized method ‘Inifile::FieldConstReference::FieldConstReference(Inifile::FieldReferenceBase::InternalInifile&, Inifile::authid_t)’ first required here return {*this->ini, *this->it}; ^ In file included from src/transport/in_file_transport.hpp:25:0, from src/main/main.cpp:37: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/main/main.o" "src/main/main.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/main/main.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/RAIL/client_execute.o In file included from src/core/session_reactor.hpp:28:0, from src/RAIL/client_execute.hpp:23, from src/RAIL/client_execute.cpp:21: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/RAIL/client_execute.hpp:23:0, from src/RAIL/client_execute.cpp:21: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/RAIL/client_execute.hpp:23, from src/RAIL/client_execute.cpp:21: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/RAIL/client_execute.o" "src/RAIL/client_execute.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/RAIL/client_execute.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/acl/module_manager/create_module_rdp.o In file included from src/core/client_info.hpp:44:0, from src/front/front.hpp:83, from src/acl/module_manager.hpp:33, from src/acl/module_manager/create_module_rdp.cpp:25: src/core/RDP/capabilities/bitmapcodecs.hpp:33:19: fatal error: variant: Aucun fichier ou dossier de ce type #include ^ compilation terminated. "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/acl/module_manager/create_module_rdp.o" "src/acl/module_manager/create_module_rdp.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/acl/module_manager/create_module_rdp.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/acl/module_manager/create_module_vnc.o In file included from src/core/client_info.hpp:44:0, from src/acl/module_manager/create_module_vnc.cpp:26: src/core/RDP/capabilities/bitmapcodecs.hpp:33:19: fatal error: variant: Aucun fichier ou dossier de ce type #include ^ compilation terminated. "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/acl/module_manager/create_module_vnc.o" "src/acl/module_manager/create_module_vnc.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/acl/module_manager/create_module_vnc.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/acl/module_manager/mm_ini.o In file included from projects/redemption_configs/redemption_src/configs/io.hpp:32:0, from projects/redemption_configs/redemption_src/configs/config.hpp:26, from src/acl/module_manager/mm_ini.cpp:27: src/utils/sugar/algostring.hpp:113:74: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(String&& str, Strings const&... strs) ^ src/utils/sugar/algostring.hpp:122:79: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(std::string&& str, Strings const&... strs) ^ In file included from src/acl/module_manager/mm_ini.cpp:27:0: projects/redemption_configs/redemption_src/configs/config.hpp: In constructor ‘Inifile::FieldReference::FieldReference(Inifile::FieldReferenceBase::InternalInifile&, Inifile::authid_t)’: projects/redemption_configs/redemption_src/configs/config.hpp:323:42: warning: useless cast to type ‘Inifile::FieldReferenceBase::InternalInifile& {aka Inifile&}’ [-Wuseless-cast] using FieldReferenceBase::FieldReferenceBase; ^~~~~~~~~~~~~~~~~~ projects/redemption_configs/redemption_src/configs/config.hpp: In member function ‘Inifile::FieldReference Inifile::get_acl_field(Inifile::authid_t)’: projects/redemption_configs/redemption_src/configs/config.hpp:331:30: note: synthesized method ‘Inifile::FieldReference::FieldReference(Inifile::FieldReferenceBase::InternalInifile&, Inifile::authid_t)’ first required here return {*this, authid}; ^ projects/redemption_configs/redemption_src/configs/config.hpp: In constructor ‘Inifile::FieldConstReference::FieldConstReference(Inifile::FieldReferenceBase::InternalInifile&, Inifile::authid_t)’: projects/redemption_configs/redemption_src/configs/config.hpp:348:41: warning: useless cast to type ‘Inifile::FieldReferenceBase::InternalInifile& {aka const Inifile&}’ [-Wuseless-cast] using FieldReferenceBase::FieldReferenceBase; ^~~~~~~~~~~~~~~~~~ projects/redemption_configs/redemption_src/configs/config.hpp: In member function ‘Inifile::FieldConstReference Inifile::FieldsChanged::iterator::operator*() const’: projects/redemption_configs/redemption_src/configs/config.hpp:366:46: note: synthesized method ‘Inifile::FieldConstReference::FieldConstReference(Inifile::FieldReferenceBase::InternalInifile&, Inifile::authid_t)’ first required here return {*this->ini, *this->it}; ^ In file included from src/core/session_reactor.hpp:28:0, from src/acl/module_manager/mm_ini.cpp:29: src/utils/string_c.hpp: At global scope: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/acl/module_manager/mm_ini.cpp:29:0: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/sugar/array.hpp:23, from src/utils/sugar/array_view.hpp:28, from src/core/callback.hpp:29, from src/mod/mod_api.hpp:23, from src/acl/mm_api.hpp:25, from src/acl/module_manager/mm_ini.hpp:27, from src/acl/module_manager/mm_ini.cpp:26: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/acl/module_manager/mm_ini.o" "src/acl/module_manager/mm_ini.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/acl/module_manager/mm_ini.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/capture.o In file included from src/gdi/graphic_api.hpp:23:0, from src/core/RDP/RDPDrawable.hpp:28, from src/capture/capture.cpp:36: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/core/RDP/RDPDrawable.hpp:28, from src/capture/capture.cpp:36: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/core/RDP/RDPDrawable.hpp:28:0, from src/capture/capture.cpp:36: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/utils/drawable_pointer.hpp:39:0, from src/core/RDP/RDPDrawable.hpp:33, from src/capture/capture.cpp:36: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/capture/capture.cpp:40:0: src/utils/sugar/algostring.hpp: At global scope: src/utils/sugar/algostring.hpp:113:74: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(String&& str, Strings const&... strs) ^ src/utils/sugar/algostring.hpp:122:79: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(std::string&& str, Strings const&... strs) ^ In file included from src/utils/timestamp_tracer.hpp:23:0, from src/capture/capture.cpp:54: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/log.hpp:33, from src/core/RDP/capabilities/cap_glyphcache.hpp:25, from src/core/RDP/RDPDrawable.hpp:26, from src/capture/capture.cpp:36: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timestamp_tracer.hpp:634:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/timestamp_tracer.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timestamp_tracer.hpp:634:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timestamp_tracer.hpp:634:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wno-deprecated-declarations -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/capture/capture.o" "src/capture/capture.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/capture.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/file_to_graphic.o In file included from src/gdi/graphic_api.hpp:23:0, from src/capture/file_to_graphic.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/capture/file_to_graphic.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/capture/file_to_graphic.cpp:22:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/capture/wrm_meta_chunk.hpp:24:0, from src/capture/file_to_graphic.hpp:24, from src/capture/file_to_graphic.cpp:28: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/capture/wrm_meta_chunk.hpp:27:0, from src/capture/file_to_graphic.hpp:24, from src/capture/file_to_graphic.cpp:28: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/gdi/graphic_api.hpp:27, from src/capture/file_to_graphic.cpp:22: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/transport/gzip_compression_transport.hpp:62:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/transport/gzip_compression_transport.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/transport/gzip_compression_transport.hpp:62:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/transport/gzip_compression_transport.hpp:62:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/capture/file_to_graphic.o" "src/capture/file_to_graphic.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/file_to_graphic.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/params_from_ini.o In file included from src/capture/wrm_params.hpp:24:0, from src/capture/params_from_ini.hpp:28, from src/capture/params_from_ini.cpp:21: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryDestBlt.hpp:27, from src/core/RDP/state_chunk.hpp:24, from src/core/RDP/RDPSerializer.hpp:96, from src/capture/params_from_ini.cpp:23: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/core/RDP/orders/RDPOrdersSecondaryBmpCache.hpp:31:0, from src/core/RDP/caches/bmpcache.hpp:30, from src/core/RDP/RDPSerializer.hpp:107, from src/capture/params_from_ini.cpp:23: src/utils/sugar/numerics/safe_conversions.hpp: At global scope: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/log.hpp:33, from src/core/RDP/bitmapupdate.hpp:24, from src/core/RDP/RDPSerializer.hpp:94, from src/capture/params_from_ini.cpp:23: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ projects/redemption_configs/redemption_src/configs/io.hpp:335:5: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ projects/redemption_configs/redemption_src/configs/io.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ projects/redemption_configs/redemption_src/configs/io.hpp:335:5: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ projects/redemption_configs/redemption_src/configs/io.hpp:335:5: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/capture/params_from_ini.o" "src/capture/params_from_ini.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/params_from_ini.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/video_capture.o In file included from src/transport/out_file_transport.hpp:26:0, from src/capture/video_capture.hpp:27, from src/capture/video_capture.cpp:24: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/timestamp_tracer.hpp:23:0, from src/capture/video_capture.hpp:29, from src/capture/video_capture.cpp:24: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/log.hpp:33, from src/transport/out_file_transport.hpp:24, from src/capture/video_capture.hpp:27, from src/capture/video_capture.cpp:24: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timestamp_tracer.hpp:634:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/timestamp_tracer.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timestamp_tracer.hpp:634:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timestamp_tracer.hpp:634:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wno-deprecated-declarations -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/capture/video_capture.o" "src/capture/video_capture.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/video_capture.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/video_recorder.o In file included from src/utils/image_data_view.hpp:25:0, from src/capture/video_recorder.cpp:80: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wno-deprecated-declarations -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/capture/video_recorder.o" "src/capture/video_recorder.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/capture/video_recorder.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/core/RDP/RDPDrawable.o In file included from src/gdi/graphic_api.hpp:23:0, from src/core/RDP/RDPDrawable.hpp:28, from src/core/RDP/RDPDrawable.cpp:24: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/core/RDP/RDPDrawable.hpp:28, from src/core/RDP/RDPDrawable.cpp:24: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/core/RDP/RDPDrawable.hpp:28:0, from src/core/RDP/RDPDrawable.cpp:24: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/utils/drawable_pointer.hpp:39:0, from src/core/RDP/RDPDrawable.hpp:33, from src/core/RDP/RDPDrawable.cpp:24: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/core/RDP/RDPDrawable.o" "src/core/RDP/RDPDrawable.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/core/RDP/RDPDrawable.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/core/RDP/nego.o In file included from src/core/RDP/nego.hpp:27:0, from src/core/RDP/nego.cpp:24: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/core/RDP/nla/ntlm/ntlm_message_challenge.hpp:24:0, from src/core/RDP/nla/credssp.hpp:27, from src/core/RDP/nla/nla.hpp:25, from src/core/RDP/nego.cpp:25: src/core/RDP/nla/ntlm/ntlm_message.hpp: In constructor ‘NtlmField::Buffer::Buffer()’: src/core/RDP/nla/ntlm/ntlm_message.hpp:533:30: error: conversion from ‘array_view_u8 {aka array_view}’ to ‘buffer_t’ is ambiguous , ostream(this->avbuf) ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/nla/asn1/ber.hpp:23, from src/core/RDP/nla/credssp.hpp:24, from src/core/RDP/nla/nla.hpp:25, from src/core/RDP/nego.cpp:25: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = array_view&; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = array_view&] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ In file included from src/core/RDP/nla/asn1/ber.hpp:23:0, from src/core/RDP/nla/credssp.hpp:24, from src/core/RDP/nla/nla.hpp:25, from src/core/RDP/nego.cpp:25: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/RDP/nla/ntlm/ntlm_message_challenge.hpp:24:0, from src/core/RDP/nla/credssp.hpp:27, from src/core/RDP/nla/nla.hpp:25, from src/core/RDP/nego.cpp:25: src/core/RDP/nla/ntlm/ntlm_message.hpp: In member function ‘void NtlmField::Buffer::init(std::size_t)’: src/core/RDP/nla/ntlm/ntlm_message.hpp:543:50: error: conversion from ‘array_view_u8 {aka array_view}’ to ‘buffer_t’ is ambiguous this->ostream = OutStream(this->avbuf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/nla/asn1/ber.hpp:23, from src/core/RDP/nla/credssp.hpp:24, from src/core/RDP/nla/nla.hpp:25, from src/core/RDP/nego.cpp:25: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = array_view&; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = array_view&] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ In file included from src/core/RDP/nla/asn1/ber.hpp:23:0, from src/core/RDP/nla/credssp.hpp:24, from src/core/RDP/nla/nla.hpp:25, from src/core/RDP/nego.cpp:25: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/RDP/nla/ntlm/ntlm_avpair.hpp:27:0, from src/core/RDP/nla/ntlm/ntlm_message_challenge.hpp:25, from src/core/RDP/nla/credssp.hpp:27, from src/core/RDP/nla/nla.hpp:25, from src/core/RDP/nego.cpp:25: src/utils/sugar/numerics/safe_conversions.hpp: At global scope: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/transport/transport.hpp:30, from src/core/RDP/nego.hpp:27, from src/core/RDP/nego.cpp:24: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timeval_ops.hpp:32:1: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/utils/timeval_ops.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timeval_ops.hpp:32:1: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/utils/timeval_ops.hpp:32:1: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/core/RDP/nego.o" "src/core/RDP/nego.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/core/RDP/nego.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/core/RDP/orders/remoteFx.o In file included from src/gdi/graphic_api.hpp:23:0, from src/core/RDP/orders/remoteFx.hpp:26, from src/core/RDP/orders/remoteFx.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/core/RDP/orders/remoteFx.hpp:26, from src/core/RDP/orders/remoteFx.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/core/RDP/orders/remoteFx.hpp:26:0, from src/core/RDP/orders/remoteFx.cpp:22: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/core/RDP/orders/remoteFx.o" "src/core/RDP/orders/remoteFx.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/core/RDP/orders/remoteFx.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/core/channels_authorizations.o In file included from src/core/channels_authorizations.hpp:28:0, from src/core/channels_authorizations.cpp:21: src/core/clipboard_virtual_channels_params.hpp: In function ‘std::ostream& operator<<(std::ostream&, const ClipboardVirtualChannelParams&)’: src/core/clipboard_virtual_channels_params.hpp:38:22: error: expected unqualified-id before ‘[’ token auto const & [a, b, c, d, e, f] = x; ^ src/core/clipboard_virtual_channels_params.hpp:38:22: error: expected initializer before ‘[’ token src/core/clipboard_virtual_channels_params.hpp:39:36: error: ‘a’ was not declared in this scope return ostr << " down=" << a << " up=" << b << " file=" << c ^ src/core/clipboard_virtual_channels_params.hpp:39:51: error: ‘b’ was not declared in this scope return ostr << " down=" << a << " up=" << b << " file=" << c ^ src/core/clipboard_virtual_channels_params.hpp:39:68: error: ‘c’ was not declared in this scope return ostr << " down=" << a << " up=" << b << " file=" << c ^ src/core/clipboard_virtual_channels_params.hpp:40:41: error: ‘d’ was not declared in this scope << " no syslog=" << d << " no wrm=" << e << " no verbose=" << f; ^ src/core/clipboard_virtual_channels_params.hpp:40:60: error: ‘e’ was not declared in this scope << " no syslog=" << d << " no wrm=" << e << " no verbose=" << f; ^ src/core/clipboard_virtual_channels_params.hpp:40:83: error: ‘f’ was not declared in this scope << " no syslog=" << d << " no wrm=" << e << " no verbose=" << f; ^ src/core/clipboard_virtual_channels_params.hpp:36:98: warning: unused parameter ‘x’ [-Wunused-parameter] friend ::std::ostream& operator<<(::std::ostream& ostr, ClipboardVirtualChannelParams const& x) ^ src/core/clipboard_virtual_channels_params.hpp: In member function ‘bool ClipboardVirtualChannelParams::operator==(const ClipboardVirtualChannelParams&) const’: src/core/clipboard_virtual_channels_params.hpp:44:22: error: expected unqualified-id before ‘[’ token auto const & [a, b, c, d, e, f] = *this; ^ src/core/clipboard_virtual_channels_params.hpp:44:22: error: expected initializer before ‘[’ token src/core/clipboard_virtual_channels_params.hpp:45:22: error: expected unqualified-id before ‘[’ token auto const & [a1, b1, c1, d1, e1, f1] = other; ^ src/core/clipboard_virtual_channels_params.hpp:45:22: error: expected initializer before ‘[’ token src/core/clipboard_virtual_channels_params.hpp:46:17: error: ‘a’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^ src/core/clipboard_virtual_channels_params.hpp:46:22: error: ‘a1’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^~ src/core/clipboard_virtual_channels_params.hpp:46:28: error: ‘b’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^ src/core/clipboard_virtual_channels_params.hpp:46:33: error: ‘b1’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^~ src/core/clipboard_virtual_channels_params.hpp:46:39: error: ‘c’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^ src/core/clipboard_virtual_channels_params.hpp:46:44: error: ‘c1’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^~ src/core/clipboard_virtual_channels_params.hpp:46:50: error: ‘d’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^ src/core/clipboard_virtual_channels_params.hpp:46:55: error: ‘d1’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^~ src/core/clipboard_virtual_channels_params.hpp:46:61: error: ‘e’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^ src/core/clipboard_virtual_channels_params.hpp:46:66: error: ‘e1’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^~ src/core/clipboard_virtual_channels_params.hpp:46:72: error: ‘f’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^ src/core/clipboard_virtual_channels_params.hpp:46:77: error: ‘f1’ was not declared in this scope return (a == a1 && b == b1 && c == c1 && d == d1 && e == e1 && f == f1); ^~ src/core/clipboard_virtual_channels_params.hpp:43:59: warning: unused parameter ‘other’ [-Wunused-parameter] bool operator==(const ClipboardVirtualChannelParams & other) const { ^~~~~ In file included from src/core/channels_authorizations.cpp:24:0: src/utils/sugar/algostring.hpp: At global scope: src/utils/sugar/algostring.hpp:113:74: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(String&& str, Strings const&... strs) ^ src/utils/sugar/algostring.hpp:122:79: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(std::string&& str, Strings const&... strs) ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/core/channels_authorizations.o" "src/core/channels_authorizations.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/core/channels_authorizations.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/core/error.o src/core/error.cpp: In constructor ‘{anonymous}::ErrorCbuf::ErrorCbuf(const char*, unsigned int)’: src/core/error.cpp:42:13: error: ‘sprintf’ is not a member of ‘std’ std::sprintf(buf, "Exception %s no: %u", s, e); ^~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DREDEMPTION_NO_STACKTRACE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/core/error.o" "src/core/error.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/core/error.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/core/mainloop.o In file included from src/core/client_info.hpp:44:0, from src/front/front.hpp:83, from src/acl/module_manager.hpp:33, from src/core/session.hpp:24, from src/core/session_server.hpp:26, from src/core/mainloop.cpp:26: src/core/RDP/capabilities/bitmapcodecs.hpp:33:19: fatal error: variant: Aucun fichier ou dossier de ce type #include ^ compilation terminated. "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/core/mainloop.o" "src/core/mainloop.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/core/mainloop.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/gdi/clip_from_cmd.o In file included from src/utils/colors.hpp:34:0, from src/core/RDP/orders/RDPOrdersCommon.hpp:31, from src/core/RDP/orders/RDPOrdersPrimaryDestBlt.hpp:27, from src/gdi/clip_from_cmd.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryDestBlt.hpp:27, from src/gdi/clip_from_cmd.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/gdi/clip_from_cmd.o" "src/gdi/clip_from_cmd.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/gdi/clip_from_cmd.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/gdi/graphic_api.o In file included from src/gdi/graphic_api.hpp:23:0, from src/gdi/graphic_api.cpp:21: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/gdi/graphic_api.cpp:21: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/gdi/graphic_api.cpp:21:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/gdi/graphic_api.cpp:25:0: src/utils/sugar/algostring.hpp:113:74: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(String&& str, Strings const&... strs) ^ src/utils/sugar/algostring.hpp:122:79: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(std::string&& str, Strings const&... strs) ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/gdi/graphic_api.o" "src/gdi/graphic_api.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/gdi/graphic_api.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/gdi/protected_graphics.o In file included from src/gdi/graphic_api.hpp:23:0, from src/gdi/protected_graphics.hpp:24, from src/gdi/protected_graphics.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/gdi/protected_graphics.hpp:24, from src/gdi/protected_graphics.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/gdi/protected_graphics.hpp:24:0, from src/gdi/protected_graphics.cpp:22: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/gdi/protected_graphics.cpp:26:0: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ src/gdi/protected_graphics.cpp:94:1: error: expected ‘}’ at end of input } // namespace gdi ^ src/gdi/protected_graphics.cpp: At global scope: src/gdi/protected_graphics.cpp:94:1: error: expected ‘}’ at end of input "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/gdi/protected_graphics.o" "src/gdi/protected_graphics.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/gdi/protected_graphics.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/gdi/screen_functions.o In file included from src/gdi/graphic_api.hpp:23:0, from src/gdi/screen_functions.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/gdi/screen_functions.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/gdi/screen_functions.cpp:22:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ src/gdi/screen_functions.cpp: In function ‘void gdi_clear_screen(gdi::GraphicApi&, const Dimension&)’: src/gdi/screen_functions.cpp:30:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization RDPOpaqueRect cmd(r, color_encode(BLACK, BitsPerPixel{24})); ^ src/gdi/screen_functions.cpp: In function ‘void gdi_freeze_screen(gdi::GraphicApi&, const Dimension&)’: src/gdi/screen_functions.cpp:40:53: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization r, 0xA0, color_encode(BLACK, BitsPerPixel{24}), color_encode(WHITE, BitsPerPixel{24}), ^ src/gdi/screen_functions.cpp:40:92: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization r, 0xA0, color_encode(BLACK, BitsPerPixel{24}), color_encode(WHITE, BitsPerPixel{24}), ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/gdi/screen_functions.o" "src/gdi/screen_functions.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/gdi/screen_functions.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/bouncer2_mod.o In file included from src/utils/colors.hpp:34:0, from src/core/RDP/orders/RDPOrdersCommon.hpp:31, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/bouncer2_mod.cpp:24: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/bouncer2_mod.cpp:24: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/bouncer2_mod.cpp:25:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/bouncer2_mod.hpp:26, from src/mod/internal/bouncer2_mod.cpp:27: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/bouncer2_mod.hpp:27, from src/mod/internal/bouncer2_mod.cpp:27: src/utils/string_c.hpp: At global scope: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/bouncer2_mod.hpp:27:0, from src/mod/internal/bouncer2_mod.cpp:27: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/log.hpp:33, from src/core/RDP/orders/RDPOrdersCommon.hpp:28, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/bouncer2_mod.cpp:24: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/bouncer2_mod.o" "src/mod/internal/bouncer2_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/bouncer2_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/copy_paste.o In file included from src/core/channel_list.hpp:30:0, from src/core/RDP/clipboard.hpp:26, from src/mod/internal/copy_paste.cpp:23: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/crypto/cryptcontext.hpp:25:0, from src/core/RDP/sec.hpp:33, from src/core/channel_list.hpp:34, from src/core/RDP/clipboard.hpp:26, from src/mod/internal/copy_paste.cpp:23: src/utils/crypto/ssl_sign.hpp: In member function ‘void Sign::final(uint8_t (&)[OutLen])’: src/utils/crypto/ssl_sign.hpp:76:12: error: expected ‘(’ before ‘constexpr’ if constexpr (OutLen == SslMd5::DIGEST_LENGTH) { /*NOLINT*/ ^~~~~~~~~ src/utils/crypto/ssl_sign.hpp:79:9: error: ‘else’ without a previous ‘if’ else { ^~~~ In file included from src/mod/internal/copy_paste.cpp:23:0: src/core/RDP/clipboard.hpp: In member function ‘void RDPECLIP::FormatListPDUEx::recv(InStream&, bool, bool)’: src/core/RDP/clipboard.hpp:1070:34: error: invalid conversion from ‘const uint8_t* {aka const unsigned char*}’ to ‘uint8_t* {aka unsigned char*}’ [-fpermissive] byte_ptr_cast(format_name.data()), formatName_UTF8_data_size); ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from src/utils/stream.hpp:28:0, from src/core/FSCC/FileInformation.hpp:28, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/utf.hpp:94:13: note: initializing argument 3 of ‘std::size_t UTF16toUTF8(const uint8_t*, std::size_t, uint8_t*, std::size_t)’ std::size_t UTF16toUTF8(const uint8_t * utf16_source, std::size_t utf16_len, uint8_t * utf8_target, std::size_t target_len) noexcept; ^~~~~~~~~~~ In file included from src/mod/internal/copy_paste.cpp:23:0: src/core/RDP/clipboard.hpp:1114:38: error: invalid conversion from ‘const uint8_t* {aka const unsigned char*}’ to ‘uint8_t* {aka unsigned char*}’ [-fpermissive] byte_ptr_cast(format_name.data()), formatName_UTF8_data_size); ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from src/utils/stream.hpp:28:0, from src/core/FSCC/FileInformation.hpp:28, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/utf.hpp:94:13: note: initializing argument 3 of ‘std::size_t UTF16toUTF8(const uint8_t*, std::size_t, uint8_t*, std::size_t)’ std::size_t UTF16toUTF8(const uint8_t * utf16_source, std::size_t utf16_len, uint8_t * utf8_target, std::size_t target_len) noexcept; ^~~~~~~~~~~ In file included from src/core/front_api.hpp:27:0, from src/mod/internal/copy_paste.cpp:25: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/edit.hpp:24, from src/mod/internal/copy_paste.cpp:27: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/edit.hpp:24, from src/mod/internal/copy_paste.cpp:27: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/core/FSCC/FileInformation.hpp:28:0, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = SEC::write_sec_send_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/FSCC/FileInformation.hpp:28, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/FSCC/FileInformation.hpp:28:0, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/FSCC/FileInformation.hpp:28:0, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/FSCC/FileInformation.hpp:28, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/FSCC/FileInformation.hpp:28:0, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/FSCC/FileInformation.hpp:28:0, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = X224::write_x224_dt_tpdu_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/FSCC/FileInformation.hpp:28, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 7ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/FSCC/FileInformation.hpp:28:0, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/FSCC/FileInformation.hpp:28:0, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:382:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/FSCC/FileInformation.hpp:28, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/FSCC/FileInformation.hpp:28:0, from src/core/RDP/clipboard.hpp:24, from src/mod/internal/copy_paste.cpp:23: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/copy_paste.o" "src/mod/internal/copy_paste.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/copy_paste.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/flat_dialog_mod.o In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/flat_dialog_mod.hpp:26, from src/mod/internal/flat_dialog_mod.cpp:22: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/locally_integrable_mod.hpp:23:0, from src/mod/internal/flat_dialog_mod.hpp:26, from src/mod/internal/flat_dialog_mod.cpp:22: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/flat_dialog_mod.hpp:26, from src/mod/internal/flat_dialog_mod.cpp:22: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/flat_dialog_mod.o" "src/mod/internal/flat_dialog_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/flat_dialog_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/flat_login_mod.o In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/flat_login_mod.hpp:27, from src/mod/internal/flat_login_mod.cpp:23: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/locally_integrable_mod.hpp:23:0, from src/mod/internal/flat_login_mod.hpp:27, from src/mod/internal/flat_login_mod.cpp:23: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/flat_login_mod.hpp:27, from src/mod/internal/flat_login_mod.cpp:23: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/flat_login_mod.o" "src/mod/internal/flat_login_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/flat_login_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/flat_wab_close_mod.o In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/flat_wab_close_mod.hpp:26, from src/mod/internal/flat_wab_close_mod.cpp:22: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/flat_wab_close_mod.hpp:26:0, from src/mod/internal/flat_wab_close_mod.cpp:22: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/mod/internal/flat_wab_close_mod.hpp:26, from src/mod/internal/flat_wab_close_mod.cpp:22: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/flat_wab_close_mod.o" "src/mod/internal/flat_wab_close_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/flat_wab_close_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/flat_wait_mod.o In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/flat_wait_mod.hpp:26, from src/mod/internal/flat_wait_mod.cpp:22: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/flat_wait_mod.hpp:26:0, from src/mod/internal/flat_wait_mod.cpp:22: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/mod/internal/flat_wait_mod.hpp:26, from src/mod/internal/flat_wait_mod.cpp:22: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/flat_wait_mod.o" "src/mod/internal/flat_wait_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/flat_wait_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/interactive_target_mod.o In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/interactive_target_mod.hpp:26, from src/mod/internal/interactive_target_mod.cpp:22: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/locally_integrable_mod.hpp:23:0, from src/mod/internal/interactive_target_mod.hpp:26, from src/mod/internal/interactive_target_mod.cpp:22: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/interactive_target_mod.hpp:26, from src/mod/internal/interactive_target_mod.cpp:22: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/interactive_target_mod.o" "src/mod/internal/interactive_target_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/interactive_target_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/internal_mod.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/core/channel_list.hpp:30:0, from src/core/front_api.hpp:28, from src/mod/internal/internal_mod.cpp:22: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/crypto/cryptcontext.hpp:25:0, from src/core/RDP/sec.hpp:33, from src/core/channel_list.hpp:34, from src/core/front_api.hpp:28, from src/mod/internal/internal_mod.cpp:22: src/utils/crypto/ssl_sign.hpp: In member function ‘void Sign::final(uint8_t (&)[OutLen])’: src/utils/crypto/ssl_sign.hpp:76:12: error: expected ‘(’ before ‘constexpr’ if constexpr (OutLen == SslMd5::DIGEST_LENGTH) { /*NOLINT*/ ^~~~~~~~~ src/utils/crypto/ssl_sign.hpp:79:9: error: ‘else’ without a previous ‘if’ else { ^~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = SEC::write_sec_send_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/rdp_pointer.hpp:33, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/rdp_pointer.hpp:33, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = X224::write_x224_dt_tpdu_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/rdp_pointer.hpp:33, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 7ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:382:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/rdp_pointer.hpp:33, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/internal_mod.cpp:21: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/internal_mod.o" "src/mod/internal/internal_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/internal_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/locally_integrable_mod.o In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/locally_integrable_mod.cpp:21: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/locally_integrable_mod.hpp:23:0, from src/mod/internal/locally_integrable_mod.cpp:21: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/locally_integrable_mod.cpp:21: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/locally_integrable_mod.o" "src/mod/internal/locally_integrable_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/locally_integrable_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/rail_module_host_mod.o In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/rail_module_host_mod.cpp:21: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/rail_module_host_mod.cpp:21:0: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/mod/internal/rail_module_host_mod.cpp:21: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/rail_module_host_mod.o" "src/mod/internal/rail_module_host_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/rail_module_host_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/replay_mod.o In file included from src/mod/internal/replay_mod.cpp:25:0: src/capture/cryptofile.hpp: In member function ‘void CryptoContext::get_derived_key(uint8_t (&)[32], const_bytes_view)’: src/capture/cryptofile.hpp:206:74: error: no matching function for call to ‘CryptoContext::load_trace_key(uint8_t [32], std::vector&)’ this->load_trace_key(this->master_key, this->master_derivator); ^ src/capture/cryptofile.hpp:166:10: note: candidate: void CryptoContext::load_trace_key(uint8_t (&)[32], const_bytes_view) void load_trace_key(uint8_t (&buffer)[MD_HASH::DIGEST_LENGTH], const_bytes_view derivator) ^~~~~~~~~~~~~~ src/capture/cryptofile.hpp:166:10: note: no known conversion for argument 2 from ‘std::vector’ to ‘const_bytes_view’ In file included from src/core/front_api.hpp:27:0, from src/mod/internal/replay_mod.cpp:27: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/channel_list.hpp:30:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/crypto/cryptcontext.hpp:25:0, from src/core/RDP/sec.hpp:33, from src/core/channel_list.hpp:34, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/crypto/ssl_sign.hpp: In member function ‘void Sign::final(uint8_t (&)[OutLen])’: src/utils/crypto/ssl_sign.hpp:76:12: error: expected ‘(’ before ‘constexpr’ if constexpr (OutLen == SslMd5::DIGEST_LENGTH) { /*NOLINT*/ ^~~~~~~~~ src/utils/crypto/ssl_sign.hpp:79:9: error: ‘else’ without a previous ‘if’ else { ^~~~ In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/replay_mod.cpp:28: src/utils/string_c.hpp: At global scope: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/replay_mod.cpp:28:0: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/log.hpp:33, from src/capture/cryptofile.hpp:25, from src/mod/internal/replay_mod.cpp:25: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = SEC::write_sec_send_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = X224::write_x224_dt_tpdu_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 7ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:382:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/replay_mod.cpp:27: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/replay_mod.o" "src/mod/internal/replay_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/replay_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/selector_mod.o In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/selector_mod.hpp:26, from src/mod/internal/selector_mod.cpp:21: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/locally_integrable_mod.hpp:23:0, from src/mod/internal/selector_mod.hpp:26, from src/mod/internal/selector_mod.cpp:21: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/core/session_reactor.hpp:25, from src/mod/internal/locally_integrable_mod.hpp:23, from src/mod/internal/selector_mod.hpp:26, from src/mod/internal/selector_mod.cpp:21: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/selector_mod.o" "src/mod/internal/selector_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/selector_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/test_card_mod.o In file included from src/gdi/graphic_api.hpp:23:0, from src/mod/internal/test_card_mod.cpp:23: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/mod/internal/test_card_mod.cpp:23: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/test_card_mod.cpp:23:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/internal_mod.hpp:24, from src/mod/internal/test_card_mod.hpp:25, from src/mod/internal/test_card_mod.cpp:25: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/test_card_mod.hpp:26, from src/mod/internal/test_card_mod.cpp:25: src/utils/string_c.hpp: At global scope: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/test_card_mod.hpp:26:0, from src/mod/internal/test_card_mod.cpp:25: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/gdi/graphic_api.hpp:27, from src/mod/internal/test_card_mod.cpp:23: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/test_card_mod.o" "src/mod/internal/test_card_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/test_card_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/composite.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/composite.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/composite.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/composite.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/composite.cpp:26:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/composite.o" "src/mod/internal/widget/composite.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/composite.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/edit.o In file included from src/utils/colors.hpp:34:0, from src/core/RDP/orders/RDPOrdersCommon.hpp:31, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/edit.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/edit.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/edit.cpp:24:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/edit.hpp:24, from src/mod/internal/widget/edit.cpp:26: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/edit.o" "src/mod/internal/widget/edit.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/edit.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/edit_valid.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/label.hpp:24, from src/mod/internal/widget/password.hpp:24, from src/mod/internal/widget/edit_valid.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/label.hpp:24, from src/mod/internal/widget/password.hpp:24, from src/mod/internal/widget/edit_valid.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/label.hpp:24, from src/mod/internal/widget/password.hpp:24, from src/mod/internal/widget/edit_valid.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/edit_valid.cpp:28:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/edit_valid.o" "src/mod/internal/widget/edit_valid.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/edit_valid.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_button.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/flat_button.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/flat_button.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/flat_button.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/flat_button.cpp:26:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/flat_button.o" "src/mod/internal/widget/flat_button.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_button.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_dialog.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/flat_dialog.hpp:24, from src/mod/internal/widget/flat_dialog.cpp:23: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/flat_dialog.hpp:24, from src/mod/internal/widget/flat_dialog.cpp:23: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/flat_dialog.hpp:24, from src/mod/internal/widget/flat_dialog.cpp:23: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/flat_dialog.cpp:28:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/flat_dialog.o" "src/mod/internal/widget/flat_dialog.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_dialog.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_form.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/flat_form.hpp:24, from src/mod/internal/widget/flat_form.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/flat_form.hpp:24, from src/mod/internal/widget/flat_form.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/flat_form.hpp:24, from src/mod/internal/widget/flat_form.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/flat_form.o" "src/mod/internal/widget/flat_form.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_form.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_interactive_target.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/flat_interactive_target.hpp:24, from src/mod/internal/widget/flat_interactive_target.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/flat_interactive_target.hpp:24, from src/mod/internal/widget/flat_interactive_target.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/flat_interactive_target.hpp:24, from src/mod/internal/widget/flat_interactive_target.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/flat_interactive_target.o" "src/mod/internal/widget/flat_interactive_target.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_interactive_target.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_login.o In file included from src/utils/colors.hpp:34:0, from src/core/RDP/orders/RDPOrdersCommon.hpp:31, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/flat_login.cpp:23: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/flat_login.cpp:23: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/flat_login.cpp:24:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/flat_login.hpp:23, from src/mod/internal/widget/flat_login.cpp:26: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ src/mod/internal/widget/flat_login.cpp: In member function ‘virtual void FlatLogin::ScrollableMessage::notify(Widget*, NotifyApi::notify_event_t)’: src/mod/internal/widget/flat_login.cpp:55:17: error: missing template arguments before ‘gd_lock’ update_lock gd_lock{this->drawable}; ^~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/flat_login.o" "src/mod/internal/widget/flat_login.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_login.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_wab_close.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/flat_wab_close.hpp:24, from src/mod/internal/widget/flat_wab_close.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/flat_wab_close.hpp:24, from src/mod/internal/widget/flat_wab_close.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/flat_wab_close.hpp:24, from src/mod/internal/widget/flat_wab_close.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/flat_wab_close.cpp:25:0: src/utils/sugar/algostring.hpp: At global scope: src/utils/sugar/algostring.hpp:113:74: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(String&& str, Strings const&... strs) ^ src/utils/sugar/algostring.hpp:122:79: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(std::string&& str, Strings const&... strs) ^ In file included from src/mod/internal/widget/flat_wab_close.cpp:27:0: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/flat_wab_close.o" "src/mod/internal/widget/flat_wab_close.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_wab_close.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_wait.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/flat_wait.hpp:24, from src/mod/internal/widget/flat_wait.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/flat_wait.hpp:24:0, from src/mod/internal/widget/flat_wait.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/flat_wait.hpp:25, from src/mod/internal/widget/flat_wait.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/flat_wait.o" "src/mod/internal/widget/flat_wait.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/flat_wait.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/group_box.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/group_box.hpp:23, from src/mod/internal/widget/group_box.cpp:21: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/group_box.hpp:23, from src/mod/internal/widget/group_box.cpp:21: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/group_box.hpp:23, from src/mod/internal/widget/group_box.cpp:21: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/group_box.cpp:23:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/group_box.o" "src/mod/internal/widget/group_box.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/group_box.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/image.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/image.hpp:24, from src/mod/internal/widget/image.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/image.hpp:24, from src/mod/internal/widget/image.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/image.hpp:24, from src/mod/internal/widget/image.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/image.cpp:24:0: src/utils/sugar/numerics/safe_conversions.hpp: At global scope: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ src/mod/internal/widget/image.cpp:85:1: error: expected ‘}’ at end of input } ^ src/mod/internal/widget/image.cpp: At global scope: src/mod/internal/widget/image.cpp:85:1: error: expected ‘}’ at end of input "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/image.o" "src/mod/internal/widget/image.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/image.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/label.o In file included from src/utils/colors.hpp:34:0, from src/core/RDP/orders/RDPOrdersCommon.hpp:31, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/label.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/label.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/label.hpp:24, from src/mod/internal/widget/label.cpp:24: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/label.cpp:25:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/label.o" "src/mod/internal/widget/label.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/label.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/labelgrid.o In file included from src/utils/colors.hpp:34:0, from src/core/RDP/orders/RDPOrdersCommon.hpp:31, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/grid.hpp:24:0, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/grid.hpp:26, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/utils/sugar/bytes_view.hpp:24:0, from src/utils/utf.hpp:28, from src/utils/stream.hpp:28, from src/core/RDP/orders/RDPOrdersCommon.hpp:29, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/utils/sugar/array_view.hpp: In instantiation of ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’: src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array_view.hpp:172:16: error: no matching function for call to ‘array_view::array_view()’ constexpr auto make_array_view(Cont & cont) ^~~~~~~~~~~~~~~ src/utils/sugar/array_view.hpp:74:15: note: candidate: template constexpr array_view::array_view(array_view) constexpr array_view(array_view av) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:74:15: note: template argument deduction/substitution failed: src/utils/sugar/array_view.hpp:172:16: note: ‘std::vector’ is not derived from ‘array_view’ constexpr auto make_array_view(Cont & cont) ^~~~~~~~~~~~~~~ src/utils/sugar/array_view.hpp:65:15: note: candidate: template constexpr array_view::array_view(U&) constexpr array_view(U & x) ^~~~~~~~~~ src/utils/sugar/array_view.hpp:65:15: note: template argument deduction/substitution failed: src/utils/sugar/array_view.hpp:62:52: error: no matching function for call to ‘data(std::vector&)’ *static_cast(nullptr) = utils::data(std::declval()), ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from src/utils/sugar/array_view.hpp:28:0, from src/utils/sugar/bytes_view.hpp:24, from src/utils/utf.hpp:28, from src/utils/stream.hpp:28, from src/core/RDP/orders/RDPOrdersCommon.hpp:29, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/utils/sugar/array.hpp:94:20: note: candidate: template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) constexpr auto data(C & c) ^~~~ src/utils/sugar/array.hpp:94:20: note: template argument deduction/substitution failed: src/utils/sugar/array.hpp: In substitution of ‘template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) [with C = std::vector]’: src/utils/sugar/array_view.hpp:62:52: required from ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’ src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array.hpp:96:35: error: no matching function for call to ‘data_impl(std::vector&)’ -> decltype(detail_::data_impl(c)) ~~~~~~~~~~~~~~~~~~^~~ src/utils/sugar/array.hpp:64:24: note: candidate: template constexpr decltype (utils::adl_barrier_::data(c)) utils::detail_::data_impl(C&) constexpr auto data_impl(C & c) ^~~~~~~~~ src/utils/sugar/array.hpp:64:24: note: template argument deduction/substitution failed: src/utils/sugar/array.hpp: In substitution of ‘template constexpr decltype (utils::adl_barrier_::data(c)) utils::detail_::data_impl(C&) [with C = std::vector]’: src/utils/sugar/array.hpp:96:35: required by substitution of ‘template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) [with C = std::vector]’ src/utils/sugar/array_view.hpp:62:52: required from ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’ src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array.hpp:66:25: error: call of overloaded ‘data(std::vector&)’ is ambiguous -> decltype(data(c)) ~~~~^~~ src/utils/sugar/array.hpp:38:24: note: candidate: constexpr decltype (c.data()) utils::adl_barrier_::data(C&) [with C = std::vector; decltype (c.data()) = short unsigned int*] constexpr auto data(C & c) ^~~~ In file included from /usr/include/c++/6/string:51:0, from /usr/include/c++/6/stdexcept:39, from /usr/include/c++/6/array:39, from src/utils/sugar/array.hpp:26, from src/utils/sugar/array_view.hpp:28, from src/utils/sugar/bytes_view.hpp:24, from src/utils/utf.hpp:28, from src/utils/stream.hpp:28, from src/core/RDP/orders/RDPOrdersCommon.hpp:29, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: /usr/include/c++/6/bits/range_access.h:296:5: note: candidate: constexpr decltype (__cont.data()) std::data(const _Container&) [with _Container = std::vector; decltype (__cont.data()) = const short unsigned int*] data(const _Container& __cont) -> decltype(__cont.data()) ^~~~ /usr/include/c++/6/bits/range_access.h:287:5: note: candidate: constexpr decltype (__cont.data()) std::data(_Container&) [with _Container = std::vector; decltype (__cont.data()) = short unsigned int*] data(_Container& __cont) -> decltype(__cont.data()) ^~~~ In file included from src/utils/sugar/bytes_view.hpp:24:0, from src/utils/utf.hpp:28, from src/utils/stream.hpp:28, from src/core/RDP/orders/RDPOrdersCommon.hpp:29, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/utils/sugar/array_view.hpp: In instantiation of ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’: src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array_view.hpp:56:15: note: candidate: constexpr array_view::array_view(array_view::type*, array_view::type*) [with T = short unsigned int; array_view::type = short unsigned int] constexpr array_view(type * p, type * pright) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:56:15: note: candidate expects 2 arguments, 1 provided src/utils/sugar/array_view.hpp:51:15: note: candidate: constexpr array_view::array_view(array_view::type*, std::size_t) [with T = short unsigned int; array_view::type = short unsigned int; std::size_t = long unsigned int] constexpr array_view(type * p, std::size_t sz) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:51:15: note: candidate expects 2 arguments, 1 provided src/utils/sugar/array_view.hpp:47:15: note: candidate: constexpr array_view::array_view(std::nullptr_t) [with T = short unsigned int; std::nullptr_t = std::nullptr_t] constexpr array_view(std::nullptr_t /*null*/) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:47:15: note: no known conversion for argument 1 from ‘std::vector’ to ‘std::nullptr_t’ src/utils/sugar/array_view.hpp:44:15: note: candidate: constexpr array_view::array_view(const array_view&) [with T = short unsigned int] constexpr array_view(array_view const & other) = default; ^~~~~~~~~~ src/utils/sugar/array_view.hpp:44:15: note: no known conversion for argument 1 from ‘std::vector’ to ‘const array_view&’ src/utils/sugar/array_view.hpp:43:15: note: candidate: constexpr array_view::array_view() [with T = short unsigned int] constexpr array_view() = default; ^~~~~~~~~~ src/utils/sugar/array_view.hpp:43:15: note: candidate expects 0 arguments, 1 provided src/utils/sugar/array_view.hpp: In instantiation of ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’: src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array_view.hpp:172:16: error: no matching function for call to ‘array_view::array_view()’ constexpr auto make_array_view(Cont & cont) ^~~~~~~~~~~~~~~ src/utils/sugar/array_view.hpp:74:15: note: candidate: template constexpr array_view::array_view(array_view) constexpr array_view(array_view av) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:74:15: note: template argument deduction/substitution failed: src/utils/sugar/array_view.hpp:172:16: note: ‘std::vector’ is not derived from ‘array_view’ constexpr auto make_array_view(Cont & cont) ^~~~~~~~~~~~~~~ src/utils/sugar/array_view.hpp:65:15: note: candidate: template constexpr array_view::array_view(U&) constexpr array_view(U & x) ^~~~~~~~~~ src/utils/sugar/array_view.hpp:65:15: note: template argument deduction/substitution failed: src/utils/sugar/array_view.hpp:62:52: error: no matching function for call to ‘data(std::vector&)’ *static_cast(nullptr) = utils::data(std::declval()), ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from src/utils/sugar/array_view.hpp:28:0, from src/utils/sugar/bytes_view.hpp:24, from src/utils/utf.hpp:28, from src/utils/stream.hpp:28, from src/core/RDP/orders/RDPOrdersCommon.hpp:29, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/utils/sugar/array.hpp:94:20: note: candidate: template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) constexpr auto data(C & c) ^~~~ src/utils/sugar/array.hpp:94:20: note: template argument deduction/substitution failed: src/utils/sugar/array.hpp: In substitution of ‘template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) [with C = std::vector]’: src/utils/sugar/array_view.hpp:62:52: required from ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’ src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array.hpp:96:35: error: no matching function for call to ‘data_impl(std::vector&)’ -> decltype(detail_::data_impl(c)) ~~~~~~~~~~~~~~~~~~^~~ src/utils/sugar/array.hpp:64:24: note: candidate: template constexpr decltype (utils::adl_barrier_::data(c)) utils::detail_::data_impl(C&) constexpr auto data_impl(C & c) ^~~~~~~~~ src/utils/sugar/array.hpp:64:24: note: template argument deduction/substitution failed: src/utils/sugar/array.hpp: In substitution of ‘template constexpr decltype (utils::adl_barrier_::data(c)) utils::detail_::data_impl(C&) [with C = std::vector]’: src/utils/sugar/array.hpp:96:35: required by substitution of ‘template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) [with C = std::vector]’ src/utils/sugar/array_view.hpp:62:52: required from ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’ src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array.hpp:66:25: error: call of overloaded ‘data(std::vector&)’ is ambiguous -> decltype(data(c)) ~~~~^~~ src/utils/sugar/array.hpp:38:24: note: candidate: constexpr decltype (c.data()) utils::adl_barrier_::data(C&) [with C = std::vector; decltype (c.data()) = short unsigned int*] constexpr auto data(C & c) ^~~~ In file included from /usr/include/c++/6/string:51:0, from /usr/include/c++/6/stdexcept:39, from /usr/include/c++/6/array:39, from src/utils/sugar/array.hpp:26, from src/utils/sugar/array_view.hpp:28, from src/utils/sugar/bytes_view.hpp:24, from src/utils/utf.hpp:28, from src/utils/stream.hpp:28, from src/core/RDP/orders/RDPOrdersCommon.hpp:29, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: /usr/include/c++/6/bits/range_access.h:296:5: note: candidate: constexpr decltype (__cont.data()) std::data(const _Container&) [with _Container = std::vector; decltype (__cont.data()) = const short unsigned int*] data(const _Container& __cont) -> decltype(__cont.data()) ^~~~ /usr/include/c++/6/bits/range_access.h:287:5: note: candidate: constexpr decltype (__cont.data()) std::data(_Container&) [with _Container = std::vector; decltype (__cont.data()) = short unsigned int*] data(_Container& __cont) -> decltype(__cont.data()) ^~~~ In file included from src/utils/sugar/bytes_view.hpp:24:0, from src/utils/utf.hpp:28, from src/utils/stream.hpp:28, from src/core/RDP/orders/RDPOrdersCommon.hpp:29, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/grid.hpp:23, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/labelgrid.cpp:21: src/utils/sugar/array_view.hpp: In instantiation of ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’: src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array_view.hpp:56:15: note: candidate: constexpr array_view::array_view(array_view::type*, array_view::type*) [with T = short unsigned int; array_view::type = short unsigned int] constexpr array_view(type * p, type * pright) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:56:15: note: candidate expects 2 arguments, 1 provided src/utils/sugar/array_view.hpp:51:15: note: candidate: constexpr array_view::array_view(array_view::type*, std::size_t) [with T = short unsigned int; array_view::type = short unsigned int; std::size_t = long unsigned int] constexpr array_view(type * p, std::size_t sz) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:51:15: note: candidate expects 2 arguments, 1 provided src/utils/sugar/array_view.hpp:47:15: note: candidate: constexpr array_view::array_view(std::nullptr_t) [with T = short unsigned int; std::nullptr_t = std::nullptr_t] constexpr array_view(std::nullptr_t /*null*/) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:47:15: note: no known conversion for argument 1 from ‘std::vector’ to ‘std::nullptr_t’ src/utils/sugar/array_view.hpp:44:15: note: candidate: constexpr array_view::array_view(const array_view&) [with T = short unsigned int] constexpr array_view(array_view const & other) = default; ^~~~~~~~~~ src/utils/sugar/array_view.hpp:44:15: note: no known conversion for argument 1 from ‘std::vector’ to ‘const array_view&’ src/utils/sugar/array_view.hpp:43:15: note: candidate: constexpr array_view::array_view() [with T = short unsigned int] constexpr array_view() = default; ^~~~~~~~~~ src/utils/sugar/array_view.hpp:43:15: note: candidate expects 0 arguments, 1 provided src/utils/sugar/array_view.hpp:175:15: error: could not convert ‘{cont}’ from ‘’ to ‘array_view’ { return {cont}; } ^ In file included from src/mod/internal/widget/labelgrid.hpp:23:0, from src/mod/internal/widget/labelgrid.cpp:21: src/mod/internal/widget/grid.hpp: In member function ‘virtual void WidgetGrid::rdp_input_invalidate(Rect)’: src/mod/internal/widget/grid.hpp:166:25: error: missing template arguments before ‘lock’ update_lock lock{this->drawable}; ^~~~ src/mod/internal/widget/grid.hpp: In member function ‘void WidgetGrid::set_selection(uint16_t)’: src/mod/internal/widget/grid.hpp:315:25: error: missing template arguments before ‘lock’ update_lock lock{this->drawable}; ^~~~ src/mod/internal/widget/grid.hpp: In member function ‘void WidgetGrid::refresh_selected()’: src/mod/internal/widget/grid.hpp:328:25: error: missing template arguments before ‘lock’ update_lock lock{this->drawable}; ^~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/labelgrid.o" "src/mod/internal/widget/labelgrid.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/labelgrid.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/language_button.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/core/channel_list.hpp:30:0, from src/core/front_api.hpp:28, from src/mod/internal/widget/language_button.cpp:23: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/crypto/cryptcontext.hpp:25:0, from src/core/RDP/sec.hpp:33, from src/core/channel_list.hpp:34, from src/core/front_api.hpp:28, from src/mod/internal/widget/language_button.cpp:23: src/utils/crypto/ssl_sign.hpp: In member function ‘void Sign::final(uint8_t (&)[OutLen])’: src/utils/crypto/ssl_sign.hpp:76:12: error: expected ‘(’ before ‘constexpr’ if constexpr (OutLen == SslMd5::DIGEST_LENGTH) { /*NOLINT*/ ^~~~~~~~~ src/utils/crypto/ssl_sign.hpp:79:9: error: ‘else’ without a previous ‘if’ else { ^~~~ In file included from src/mod/internal/widget/language_button.cpp:28:0: src/utils/sugar/algostring.hpp: At global scope: src/utils/sugar/algostring.hpp:113:74: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(String&& str, Strings const&... strs) ^ src/utils/sugar/algostring.hpp:122:79: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] std::string str_concat(std::string&& str, Strings const&... strs) ^ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = SEC::write_sec_send_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/rdp_pointer.hpp:33, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/rdp_pointer.hpp:33, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = X224::write_x224_dt_tpdu_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/rdp_pointer.hpp:33, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 7ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:382:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/RDP/rdp_pointer.hpp:33, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/RDP/rdp_pointer.hpp:33:0, from src/mod/internal/widget/widget.hpp:27, from src/mod/internal/widget/flat_button.hpp:24, from src/mod/internal/widget/language_button.hpp:24, from src/mod/internal/widget/language_button.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/language_button.o" "src/mod/internal/widget/language_button.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/language_button.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/module_host.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/scroll.hpp:24, from src/mod/internal/widget/module_host.hpp:24, from src/mod/internal/widget/module_host.cpp:21: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/scroll.hpp:24, from src/mod/internal/widget/module_host.hpp:24, from src/mod/internal/widget/module_host.cpp:21: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/scroll.hpp:24, from src/mod/internal/widget/module_host.hpp:24, from src/mod/internal/widget/module_host.cpp:21: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/module_host.hpp:27:0, from src/mod/internal/widget/module_host.cpp:21: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/core/session_reactor.hpp:28:0, from src/RAIL/client_execute.hpp:23, from src/mod/internal/widget/module_host.cpp:41: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/RAIL/client_execute.hpp:23:0, from src/mod/internal/widget/module_host.cpp:41: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/log.hpp:33, from src/core/RDP/gcc/userdata/cs_monitor.hpp:32, from src/mod/internal/widget/module_host.hpp:23, from src/mod/internal/widget/module_host.cpp:21: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/module_host.o" "src/mod/internal/widget/module_host.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/module_host.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/multiline.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/multiline.hpp:24, from src/mod/internal/widget/multiline.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/multiline.hpp:24, from src/mod/internal/widget/multiline.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/multiline.hpp:24, from src/mod/internal/widget/multiline.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/multiline.cpp:23:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/multiline.o" "src/mod/internal/widget/multiline.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/multiline.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/number_edit.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/edit.hpp:24, from src/mod/internal/widget/number_edit.hpp:24, from src/mod/internal/widget/number_edit.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/edit.hpp:24, from src/mod/internal/widget/number_edit.hpp:24, from src/mod/internal/widget/number_edit.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/edit.hpp:24, from src/mod/internal/widget/number_edit.hpp:24, from src/mod/internal/widget/number_edit.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/number_edit.o" "src/mod/internal/widget/number_edit.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/number_edit.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/password.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/label.hpp:24, from src/mod/internal/widget/password.hpp:24, from src/mod/internal/widget/password.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/label.hpp:24, from src/mod/internal/widget/password.hpp:24, from src/mod/internal/widget/password.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/label.hpp:24, from src/mod/internal/widget/password.hpp:24, from src/mod/internal/widget/password.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/password.cpp:24:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/password.o" "src/mod/internal/widget/password.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/password.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/rail_module_host.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/rail_module_host.hpp:23, from src/mod/internal/widget/rail_module_host.cpp:21: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/rail_module_host.hpp:23, from src/mod/internal/widget/rail_module_host.cpp:21: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/rail_module_host.hpp:23, from src/mod/internal/widget/rail_module_host.cpp:21: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/module_host.hpp:27:0, from src/mod/internal/widget/rail_module_host.hpp:24, from src/mod/internal/widget/rail_module_host.cpp:21: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/rail_module_host.o" "src/mod/internal/widget/rail_module_host.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/rail_module_host.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/screen.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/widget/screen.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/widget/screen.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/screen.hpp:24, from src/mod/internal/widget/screen.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/screen.cpp:24:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/screen.o" "src/mod/internal/widget/screen.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/screen.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/scroll.o In file included from src/utils/colors.hpp:34:0, from src/core/RDP/orders/RDPOrdersCommon.hpp:31, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/scroll.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget/scroll.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/scroll.cpp:23:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/scroll.hpp:24, from src/mod/internal/widget/scroll.cpp:24: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/scroll.o" "src/mod/internal/widget/scroll.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/scroll.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/selector.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/composite.hpp:24:0, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/grid.hpp:24:0, from src/mod/internal/widget/labelgrid.hpp:23, from src/mod/internal/widget/selector.hpp:30, from src/mod/internal/widget/selector.cpp:23: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/core/callback.hpp:29:0, from src/mod/internal/widget/widget.hpp:26, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: src/utils/sugar/array_view.hpp: In instantiation of ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’: src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array_view.hpp:172:16: error: no matching function for call to ‘array_view::array_view()’ constexpr auto make_array_view(Cont & cont) ^~~~~~~~~~~~~~~ src/utils/sugar/array_view.hpp:74:15: note: candidate: template constexpr array_view::array_view(array_view) constexpr array_view(array_view av) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:74:15: note: template argument deduction/substitution failed: src/utils/sugar/array_view.hpp:172:16: note: ‘std::vector’ is not derived from ‘array_view’ constexpr auto make_array_view(Cont & cont) ^~~~~~~~~~~~~~~ src/utils/sugar/array_view.hpp:65:15: note: candidate: template constexpr array_view::array_view(U&) constexpr array_view(U & x) ^~~~~~~~~~ src/utils/sugar/array_view.hpp:65:15: note: template argument deduction/substitution failed: src/utils/sugar/array_view.hpp:62:52: error: no matching function for call to ‘data(std::vector&)’ *static_cast(nullptr) = utils::data(std::declval()), ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from src/utils/sugar/array_view.hpp:28:0, from src/core/callback.hpp:29, from src/mod/internal/widget/widget.hpp:26, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: src/utils/sugar/array.hpp:94:20: note: candidate: template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) constexpr auto data(C & c) ^~~~ src/utils/sugar/array.hpp:94:20: note: template argument deduction/substitution failed: src/utils/sugar/array.hpp: In substitution of ‘template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) [with C = std::vector]’: src/utils/sugar/array_view.hpp:62:52: required from ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’ src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array.hpp:96:35: error: no matching function for call to ‘data_impl(std::vector&)’ -> decltype(detail_::data_impl(c)) ~~~~~~~~~~~~~~~~~~^~~ src/utils/sugar/array.hpp:64:24: note: candidate: template constexpr decltype (utils::adl_barrier_::data(c)) utils::detail_::data_impl(C&) constexpr auto data_impl(C & c) ^~~~~~~~~ src/utils/sugar/array.hpp:64:24: note: template argument deduction/substitution failed: src/utils/sugar/array.hpp: In substitution of ‘template constexpr decltype (utils::adl_barrier_::data(c)) utils::detail_::data_impl(C&) [with C = std::vector]’: src/utils/sugar/array.hpp:96:35: required by substitution of ‘template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) [with C = std::vector]’ src/utils/sugar/array_view.hpp:62:52: required from ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’ src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array.hpp:66:25: error: call of overloaded ‘data(std::vector&)’ is ambiguous -> decltype(data(c)) ~~~~^~~ src/utils/sugar/array.hpp:38:24: note: candidate: constexpr decltype (c.data()) utils::adl_barrier_::data(C&) [with C = std::vector; decltype (c.data()) = short unsigned int*] constexpr auto data(C & c) ^~~~ In file included from /usr/include/c++/6/string:51:0, from /usr/include/c++/6/bits/locale_classes.h:40, from /usr/include/c++/6/bits/ios_base.h:41, from /usr/include/c++/6/ios:42, from /usr/include/c++/6/ostream:38, from /usr/include/c++/6/iterator:64, from src/utils/colors.hpp:27, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: /usr/include/c++/6/bits/range_access.h:296:5: note: candidate: constexpr decltype (__cont.data()) std::data(const _Container&) [with _Container = std::vector; decltype (__cont.data()) = const short unsigned int*] data(const _Container& __cont) -> decltype(__cont.data()) ^~~~ /usr/include/c++/6/bits/range_access.h:287:5: note: candidate: constexpr decltype (__cont.data()) std::data(_Container&) [with _Container = std::vector; decltype (__cont.data()) = short unsigned int*] data(_Container& __cont) -> decltype(__cont.data()) ^~~~ In file included from src/core/callback.hpp:29:0, from src/mod/internal/widget/widget.hpp:26, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: src/utils/sugar/array_view.hpp: In instantiation of ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’: src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array_view.hpp:56:15: note: candidate: constexpr array_view::array_view(array_view::type*, array_view::type*) [with T = short unsigned int; array_view::type = short unsigned int] constexpr array_view(type * p, type * pright) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:56:15: note: candidate expects 2 arguments, 1 provided src/utils/sugar/array_view.hpp:51:15: note: candidate: constexpr array_view::array_view(array_view::type*, std::size_t) [with T = short unsigned int; array_view::type = short unsigned int; std::size_t = long unsigned int] constexpr array_view(type * p, std::size_t sz) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:51:15: note: candidate expects 2 arguments, 1 provided src/utils/sugar/array_view.hpp:47:15: note: candidate: constexpr array_view::array_view(std::nullptr_t) [with T = short unsigned int; std::nullptr_t = std::nullptr_t] constexpr array_view(std::nullptr_t /*null*/) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:47:15: note: no known conversion for argument 1 from ‘std::vector’ to ‘std::nullptr_t’ src/utils/sugar/array_view.hpp:44:15: note: candidate: constexpr array_view::array_view(const array_view&) [with T = short unsigned int] constexpr array_view(array_view const & other) = default; ^~~~~~~~~~ src/utils/sugar/array_view.hpp:44:15: note: no known conversion for argument 1 from ‘std::vector’ to ‘const array_view&’ src/utils/sugar/array_view.hpp:43:15: note: candidate: constexpr array_view::array_view() [with T = short unsigned int] constexpr array_view() = default; ^~~~~~~~~~ src/utils/sugar/array_view.hpp:43:15: note: candidate expects 0 arguments, 1 provided src/utils/sugar/array_view.hpp: In instantiation of ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’: src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array_view.hpp:172:16: error: no matching function for call to ‘array_view::array_view()’ constexpr auto make_array_view(Cont & cont) ^~~~~~~~~~~~~~~ src/utils/sugar/array_view.hpp:74:15: note: candidate: template constexpr array_view::array_view(array_view) constexpr array_view(array_view av) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:74:15: note: template argument deduction/substitution failed: src/utils/sugar/array_view.hpp:172:16: note: ‘std::vector’ is not derived from ‘array_view’ constexpr auto make_array_view(Cont & cont) ^~~~~~~~~~~~~~~ src/utils/sugar/array_view.hpp:65:15: note: candidate: template constexpr array_view::array_view(U&) constexpr array_view(U & x) ^~~~~~~~~~ src/utils/sugar/array_view.hpp:65:15: note: template argument deduction/substitution failed: src/utils/sugar/array_view.hpp:62:52: error: no matching function for call to ‘data(std::vector&)’ *static_cast(nullptr) = utils::data(std::declval()), ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from src/utils/sugar/array_view.hpp:28:0, from src/core/callback.hpp:29, from src/mod/internal/widget/widget.hpp:26, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: src/utils/sugar/array.hpp:94:20: note: candidate: template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) constexpr auto data(C & c) ^~~~ src/utils/sugar/array.hpp:94:20: note: template argument deduction/substitution failed: src/utils/sugar/array.hpp: In substitution of ‘template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) [with C = std::vector]’: src/utils/sugar/array_view.hpp:62:52: required from ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’ src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array.hpp:96:35: error: no matching function for call to ‘data_impl(std::vector&)’ -> decltype(detail_::data_impl(c)) ~~~~~~~~~~~~~~~~~~^~~ src/utils/sugar/array.hpp:64:24: note: candidate: template constexpr decltype (utils::adl_barrier_::data(c)) utils::detail_::data_impl(C&) constexpr auto data_impl(C & c) ^~~~~~~~~ src/utils/sugar/array.hpp:64:24: note: template argument deduction/substitution failed: src/utils/sugar/array.hpp: In substitution of ‘template constexpr decltype (utils::adl_barrier_::data(c)) utils::detail_::data_impl(C&) [with C = std::vector]’: src/utils/sugar/array.hpp:96:35: required by substitution of ‘template constexpr decltype (utils::detail_::data_impl(c)) utils::data(C&) [with C = std::vector]’ src/utils/sugar/array_view.hpp:62:52: required from ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’ src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array.hpp:66:25: error: call of overloaded ‘data(std::vector&)’ is ambiguous -> decltype(data(c)) ~~~~^~~ src/utils/sugar/array.hpp:38:24: note: candidate: constexpr decltype (c.data()) utils::adl_barrier_::data(C&) [with C = std::vector; decltype (c.data()) = short unsigned int*] constexpr auto data(C & c) ^~~~ In file included from /usr/include/c++/6/string:51:0, from /usr/include/c++/6/bits/locale_classes.h:40, from /usr/include/c++/6/bits/ios_base.h:41, from /usr/include/c++/6/ios:42, from /usr/include/c++/6/ostream:38, from /usr/include/c++/6/iterator:64, from src/utils/colors.hpp:27, from src/mod/internal/widget/composite.hpp:24, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: /usr/include/c++/6/bits/range_access.h:296:5: note: candidate: constexpr decltype (__cont.data()) std::data(const _Container&) [with _Container = std::vector; decltype (__cont.data()) = const short unsigned int*] data(const _Container& __cont) -> decltype(__cont.data()) ^~~~ /usr/include/c++/6/bits/range_access.h:287:5: note: candidate: constexpr decltype (__cont.data()) std::data(_Container&) [with _Container = std::vector; decltype (__cont.data()) = short unsigned int*] data(_Container& __cont) -> decltype(__cont.data()) ^~~~ In file included from src/core/callback.hpp:29:0, from src/mod/internal/widget/widget.hpp:26, from src/mod/internal/widget/composite.hpp:25, from src/mod/internal/widget/selector.hpp:25, from src/mod/internal/widget/selector.cpp:23: src/utils/sugar/array_view.hpp: In instantiation of ‘constexpr array_view::type> make_array_view(Cont&) [with Cont = std::vector; typename std::remove_pointer::type = short unsigned int]’: src/mod/internal/widget/grid.hpp:84:63: required from here src/utils/sugar/array_view.hpp:56:15: note: candidate: constexpr array_view::array_view(array_view::type*, array_view::type*) [with T = short unsigned int; array_view::type = short unsigned int] constexpr array_view(type * p, type * pright) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:56:15: note: candidate expects 2 arguments, 1 provided src/utils/sugar/array_view.hpp:51:15: note: candidate: constexpr array_view::array_view(array_view::type*, std::size_t) [with T = short unsigned int; array_view::type = short unsigned int; std::size_t = long unsigned int] constexpr array_view(type * p, std::size_t sz) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:51:15: note: candidate expects 2 arguments, 1 provided src/utils/sugar/array_view.hpp:47:15: note: candidate: constexpr array_view::array_view(std::nullptr_t) [with T = short unsigned int; std::nullptr_t = std::nullptr_t] constexpr array_view(std::nullptr_t /*null*/) noexcept ^~~~~~~~~~ src/utils/sugar/array_view.hpp:47:15: note: no known conversion for argument 1 from ‘std::vector’ to ‘std::nullptr_t’ src/utils/sugar/array_view.hpp:44:15: note: candidate: constexpr array_view::array_view(const array_view&) [with T = short unsigned int] constexpr array_view(array_view const & other) = default; ^~~~~~~~~~ src/utils/sugar/array_view.hpp:44:15: note: no known conversion for argument 1 from ‘std::vector’ to ‘const array_view&’ src/utils/sugar/array_view.hpp:43:15: note: candidate: constexpr array_view::array_view() [with T = short unsigned int] constexpr array_view() = default; ^~~~~~~~~~ src/utils/sugar/array_view.hpp:43:15: note: candidate expects 0 arguments, 1 provided src/utils/sugar/array_view.hpp:175:15: error: could not convert ‘{cont}’ from ‘’ to ‘array_view’ { return {cont}; } ^ In file included from src/mod/internal/widget/labelgrid.hpp:23:0, from src/mod/internal/widget/selector.hpp:30, from src/mod/internal/widget/selector.cpp:23: src/mod/internal/widget/grid.hpp: In member function ‘virtual void WidgetGrid::rdp_input_invalidate(Rect)’: src/mod/internal/widget/grid.hpp:166:25: error: missing template arguments before ‘lock’ update_lock lock{this->drawable}; ^~~~ src/mod/internal/widget/grid.hpp: In member function ‘void WidgetGrid::set_selection(uint16_t)’: src/mod/internal/widget/grid.hpp:315:25: error: missing template arguments before ‘lock’ update_lock lock{this->drawable}; ^~~~ src/mod/internal/widget/grid.hpp: In member function ‘void WidgetGrid::refresh_selected()’: src/mod/internal/widget/grid.hpp:328:25: error: missing template arguments before ‘lock’ update_lock lock{this->drawable}; ^~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/selector.o" "src/mod/internal/widget/selector.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/selector.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/tooltip.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/tooltip.hpp:24, from src/mod/internal/widget/tooltip.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/tooltip.hpp:24, from src/mod/internal/widget/tooltip.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/tooltip.hpp:24, from src/mod/internal/widget/tooltip.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/tooltip.cpp:24:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/tooltip.o" "src/mod/internal/widget/tooltip.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/tooltip.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/widget_rect.o In file included from src/utils/colors.hpp:34:0, from src/mod/internal/widget/widget.hpp:25, from src/mod/internal/widget/widget_rect.hpp:24, from src/mod/internal/widget/widget_rect.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/internal/widget/widget.hpp:25:0, from src/mod/internal/widget/widget_rect.hpp:24, from src/mod/internal/widget/widget_rect.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/internal/widget/widget.hpp:27:0, from src/mod/internal/widget/widget_rect.hpp:24, from src/mod/internal/widget/widget_rect.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/mod/internal/widget/widget_rect.cpp:24:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget/widget_rect.o" "src/mod/internal/widget/widget_rect.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget/widget_rect.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget_test_mod.o In file included from src/core/front_api.hpp:27:0, from src/mod/internal/widget_test_mod.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/channel_list.hpp:30:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/crypto/cryptcontext.hpp:25:0, from src/core/RDP/sec.hpp:33, from src/core/channel_list.hpp:34, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/crypto/ssl_sign.hpp: In member function ‘void Sign::final(uint8_t (&)[OutLen])’: src/utils/crypto/ssl_sign.hpp:76:12: error: expected ‘(’ before ‘constexpr’ if constexpr (OutLen == SslMd5::DIGEST_LENGTH) { /*NOLINT*/ ^~~~~~~~~ src/utils/crypto/ssl_sign.hpp:79:9: error: ‘else’ without a previous ‘if’ else { ^~~~ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryOpaqueRect.hpp:27, from src/mod/internal/widget_test_mod.cpp:23: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/core/session_reactor.hpp:28:0, from src/mod/internal/widget_test_mod.cpp:26: src/utils/string_c.hpp: At global scope: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/internal/widget_test_mod.cpp:26:0: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/sugar/array.hpp:23, from src/utils/sugar/array_view.hpp:28, from src/utils/sugar/bytes_view.hpp:24, from src/utils/utf.hpp:28, from src/utils/stream.hpp:28, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = SEC::write_sec_send_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = X224::write_x224_dt_tpdu_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 7ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:382:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/core/front_api.hpp:28, from src/mod/internal/widget_test_mod.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/internal/widget_test_mod.o" "src/mod/internal/widget_test_mod.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/internal/widget_test_mod.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/rdp/parse_extra_orders.o In file included from src/mod/rdp/parse_extra_orders.hpp:23:0, from src/mod/rdp/parse_extra_orders.cpp:21: src/core/RDP/capabilities/order.hpp:322:15: error: specialization of ‘template class utils::enum_as_flag’ in different namespace [-fpermissive] struct utils::enum_as_flag ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/core/RDP/capabilities/order.hpp:28:0, from src/mod/rdp/parse_extra_orders.hpp:23, from src/mod/rdp/parse_extra_orders.cpp:21: src/utils/sugar/flags.hpp:34:7: error: from definition of ‘template class utils::enum_as_flag’ [-fpermissive] class enum_as_flag ^~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/rdp/parse_extra_orders.o" "src/mod/rdp/parse_extra_orders.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/rdp/parse_extra_orders.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/rdp/rdp.o In file included from src/mod/rdp/rdp.hpp:41:0, from src/mod/rdp/rdp.cpp:23: src/core/RDP/capabilities/bitmapcodecs.hpp:33:19: fatal error: variant: Aucun fichier ou dossier de ce type #include ^ compilation terminated. "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/rdp/rdp.o" "src/mod/rdp/rdp.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/rdp/rdp.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/rdp/rdp_negociation.o In file included from src/core/client_info.hpp:44:0, from src/mod/rdp/rdp_negociation.cpp:31: src/core/RDP/capabilities/bitmapcodecs.hpp:33:19: fatal error: variant: Aucun fichier ou dossier de ce type #include ^ compilation terminated. "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/rdp/rdp_negociation.o" "src/mod/rdp/rdp_negociation.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/rdp/rdp_negociation.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/copyrect.o In file included from src/mod/vnc/encoder/copyrect.hpp:25:0, from src/mod/vnc/encoder/copyrect.cpp:23: src/mod/vnc/encoder/encoder_api.hpp:56:64: error: ‘is_same_v’ is not a member of ‘std’ template>> ^~~ src/mod/vnc/encoder/encoder_api.hpp:56:78: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses] template>> ^ src/mod/vnc/encoder/encoder_api.hpp:56:89: error: template argument 1 is invalid template>> ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:56:98: error: expected unqualified-id before ‘>’ token template>> ^ In file included from src/core/buf64k.hpp:23:0, from src/mod/vnc/encoder/copyrect.cpp:25: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/colors.hpp:34:0, from src/core/RDP/orders/RDPOrdersCommon.hpp:31, from src/core/RDP/orders/RDPOrdersPrimaryScrBlt.hpp:27, from src/mod/vnc/encoder/copyrect.cpp:26: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryScrBlt.hpp:27, from src/mod/vnc/encoder/copyrect.cpp:26: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/vnc/encoder/copyrect.cpp:27:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ src/mod/vnc/encoder/copyrect.cpp: In function ‘VNC::Encoder::Encoder VNC::Encoder::copy_rect_encoder(Rect, uint16_t, uint16_t)’: src/mod/vnc/encoder/copyrect.cpp:85:49: error: no matching function for call to ‘VNC::Encoder::Encoder::Encoder(VNC::Encoder::{anonymous}::CopyRect)’ return Encoder(CopyRect{rect, width, height}); ^ In file included from src/mod/vnc/encoder/copyrect.hpp:25:0, from src/mod/vnc/encoder/copyrect.cpp:23: src/mod/vnc/encoder/encoder_api.hpp:53:13: note: candidate: VNC::Encoder::Encoder::Encoder(VNC::Encoder::Encoder&&) Encoder(Encoder&&) = default; ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:53:13: note: no known conversion for argument 1 from ‘VNC::Encoder::{anonymous}::CopyRect’ to ‘VNC::Encoder::Encoder&&’ src/mod/vnc/encoder/encoder_api.hpp:51:13: note: candidate: VNC::Encoder::Encoder::Encoder() Encoder() = default; ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:51:13: note: candidate expects 0 arguments, 1 provided "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/vnc/encoder/copyrect.o" "src/mod/vnc/encoder/copyrect.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/copyrect.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/cursor.o In file included from src/mod/vnc/encoder/cursor.hpp:25:0, from src/mod/vnc/encoder/cursor.cpp:23: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/vnc/encoder/cursor.hpp:26:0, from src/mod/vnc/encoder/cursor.cpp:23: src/mod/vnc/encoder/encoder_api.hpp: At global scope: src/mod/vnc/encoder/encoder_api.hpp:56:64: error: ‘is_same_v’ is not a member of ‘std’ template>> ^~~ src/mod/vnc/encoder/encoder_api.hpp:56:78: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses] template>> ^ src/mod/vnc/encoder/encoder_api.hpp:56:89: error: template argument 1 is invalid template>> ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:56:98: error: expected unqualified-id before ‘>’ token template>> ^ In file included from src/core/RDP/rdp_pointer.hpp:32:0, from src/mod/vnc/encoder/cursor.cpp:25: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/vnc/encoder/cursor.cpp:25:0: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/core/buf64k.hpp:23:0, from src/mod/vnc/encoder/cursor.cpp:26: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/mod/vnc/encoder/cursor.cpp:27:0: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ src/mod/vnc/encoder/cursor.cpp: In function ‘VNC::Encoder::Encoder VNC::Encoder::cursor_encoder(BytesPerPixel, Rect, int, int, int, int, int, int, VNCVerbose)’: src/mod/vnc/encoder/cursor.cpp:142:112: error: no matching function for call to ‘VNC::Encoder::Encoder::Encoder(VNC::Encoder::{anonymous}::Cursor)’ return Encoder(Cursor{Bpp, rect, red_shift, red_max, green_shift, green_max, blue_shift, blue_max, verbose}); ^ In file included from src/mod/vnc/encoder/cursor.hpp:26:0, from src/mod/vnc/encoder/cursor.cpp:23: src/mod/vnc/encoder/encoder_api.hpp:53:13: note: candidate: VNC::Encoder::Encoder::Encoder(VNC::Encoder::Encoder&&) Encoder(Encoder&&) = default; ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:53:13: note: no known conversion for argument 1 from ‘VNC::Encoder::{anonymous}::Cursor’ to ‘VNC::Encoder::Encoder&&’ src/mod/vnc/encoder/encoder_api.hpp:51:13: note: candidate: VNC::Encoder::Encoder::Encoder() Encoder() = default; ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:51:13: note: candidate expects 0 arguments, 1 provided "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/vnc/encoder/cursor.o" "src/mod/vnc/encoder/cursor.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/cursor.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/hextile.o In file included from src/mod/vnc/encoder/hextile.hpp:25:0, from src/mod/vnc/encoder/hextile.cpp:23: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/vnc/encoder/hextile.hpp:26:0, from src/mod/vnc/encoder/hextile.cpp:23: src/mod/vnc/encoder/encoder_api.hpp: At global scope: src/mod/vnc/encoder/encoder_api.hpp:56:64: error: ‘is_same_v’ is not a member of ‘std’ template>> ^~~ src/mod/vnc/encoder/encoder_api.hpp:56:78: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses] template>> ^ src/mod/vnc/encoder/encoder_api.hpp:56:89: error: template argument 1 is invalid template>> ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:56:98: error: expected unqualified-id before ‘>’ token template>> ^ In file included from src/core/buf64k.hpp:23:0, from src/mod/vnc/encoder/hextile.cpp:26: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryMemBlt.hpp:91, from src/mod/vnc/encoder/hextile.cpp:27: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/vnc/encoder/hextile.cpp:28:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/vnc/encoder/hextile.cpp:33:0: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ In file included from src/mod/vnc/encoder/hextile.cpp:24:0: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/mod/vnc/encoder/hextile.cpp:372:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/mod/vnc/encoder/hextile.cpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/mod/vnc/encoder/hextile.cpp:372:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/mod/vnc/encoder/hextile.cpp:372:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/vnc/encoder/hextile.o" "src/mod/vnc/encoder/hextile.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/hextile.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/raw.o In file included from src/mod/vnc/encoder/raw.hpp:25:0, from src/mod/vnc/encoder/raw.cpp:23: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/vnc/encoder/raw.hpp:26:0, from src/mod/vnc/encoder/raw.cpp:23: src/mod/vnc/encoder/encoder_api.hpp: At global scope: src/mod/vnc/encoder/encoder_api.hpp:56:64: error: ‘is_same_v’ is not a member of ‘std’ template>> ^~~ src/mod/vnc/encoder/encoder_api.hpp:56:78: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses] template>> ^ src/mod/vnc/encoder/encoder_api.hpp:56:89: error: template argument 1 is invalid template>> ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:56:98: error: expected unqualified-id before ‘>’ token template>> ^ In file included from src/core/buf64k.hpp:23:0, from src/mod/vnc/encoder/raw.cpp:25: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryMemBlt.hpp:91, from src/mod/vnc/encoder/raw.cpp:26: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/vnc/encoder/raw.cpp:27:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ src/mod/vnc/encoder/raw.cpp: In function ‘VNC::Encoder::Encoder VNC::Encoder::raw_encoder(BitsPerPixel, BytesPerPixel, Rect)’: src/mod/vnc/encoder/raw.cpp:111:39: error: no matching function for call to ‘VNC::Encoder::Encoder::Encoder(VNC::Encoder::{anonymous}::Raw)’ return Encoder(Raw{bpp, Bpp, rect}); ^ In file included from src/mod/vnc/encoder/raw.hpp:26:0, from src/mod/vnc/encoder/raw.cpp:23: src/mod/vnc/encoder/encoder_api.hpp:53:13: note: candidate: VNC::Encoder::Encoder::Encoder(VNC::Encoder::Encoder&&) Encoder(Encoder&&) = default; ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:53:13: note: no known conversion for argument 1 from ‘VNC::Encoder::{anonymous}::Raw’ to ‘VNC::Encoder::Encoder&&’ src/mod/vnc/encoder/encoder_api.hpp:51:13: note: candidate: VNC::Encoder::Encoder::Encoder() Encoder() = default; ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:51:13: note: candidate expects 0 arguments, 1 provided "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/vnc/encoder/raw.o" "src/mod/vnc/encoder/raw.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/raw.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/rre.o In file included from src/mod/vnc/encoder/rre.hpp:25:0, from src/mod/vnc/encoder/rre.cpp:23: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/vnc/encoder/rre.hpp:26:0, from src/mod/vnc/encoder/rre.cpp:23: src/mod/vnc/encoder/encoder_api.hpp: At global scope: src/mod/vnc/encoder/encoder_api.hpp:56:64: error: ‘is_same_v’ is not a member of ‘std’ template>> ^~~ src/mod/vnc/encoder/encoder_api.hpp:56:78: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses] template>> ^ src/mod/vnc/encoder/encoder_api.hpp:56:89: error: template argument 1 is invalid template>> ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:56:98: error: expected unqualified-id before ‘>’ token template>> ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryMemBlt.hpp:91, from src/mod/vnc/encoder/rre.cpp:25: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/core/buf64k.hpp:23:0, from src/mod/vnc/encoder/rre.cpp:26: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/mod/vnc/encoder/rre.cpp:27:0: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/vnc/encoder/rre.cpp:30:0: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ src/mod/vnc/encoder/rre.cpp:204:1: error: expected ‘}’ at end of input } // namespace VNC ^ src/mod/vnc/encoder/rre.cpp: At global scope: src/mod/vnc/encoder/rre.cpp:204:1: error: expected ‘}’ at end of input "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/vnc/encoder/rre.o" "src/mod/vnc/encoder/rre.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/rre.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/zrle.o In file included from src/mod/vnc/encoder/zrle.hpp:26:0, from src/mod/vnc/encoder/zrle.cpp:24: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/vnc/encoder/zrle.hpp:27:0, from src/mod/vnc/encoder/zrle.cpp:24: src/mod/vnc/encoder/encoder_api.hpp: At global scope: src/mod/vnc/encoder/encoder_api.hpp:56:64: error: ‘is_same_v’ is not a member of ‘std’ template>> ^~~ src/mod/vnc/encoder/encoder_api.hpp:56:78: warning: logical not is only applied to the left hand side of comparison [-Wlogical-not-parentheses] template>> ^ src/mod/vnc/encoder/encoder_api.hpp:56:89: error: template argument 1 is invalid template>> ^~~~~~~ src/mod/vnc/encoder/encoder_api.hpp:56:98: error: expected unqualified-id before ‘>’ token template>> ^ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryMemBlt.hpp:91, from src/mod/vnc/encoder/zrle.cpp:27: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/core/buf64k.hpp:23:0, from src/mod/vnc/encoder/zrle.cpp:29: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/mod/vnc/encoder/zrle.cpp:30:0: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/mod/vnc/encoder/zrle.cpp:36:0: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ In file included from src/utils/zlib.hpp:25:0, from src/mod/vnc/encoder/zrle.hpp:30, from src/mod/vnc/encoder/zrle.cpp:24: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/mod/vnc/encoder/zrle.cpp:194:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/mod/vnc/encoder/zrle.cpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/mod/vnc/encoder/zrle.cpp:194:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/mod/vnc/encoder/zrle.cpp:194:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/vnc/encoder/zrle.o" "src/mod/vnc/encoder/zrle.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/encoder/zrle.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/transport/crypto_transport.o In file included from src/transport/crypto_transport.hpp:24:0, from src/transport/crypto_transport.cpp:21: src/capture/cryptofile.hpp: In member function ‘void CryptoContext::get_derived_key(uint8_t (&)[32], const_bytes_view)’: src/capture/cryptofile.hpp:206:74: error: no matching function for call to ‘CryptoContext::load_trace_key(uint8_t [32], std::vector&)’ this->load_trace_key(this->master_key, this->master_derivator); ^ src/capture/cryptofile.hpp:166:10: note: candidate: void CryptoContext::load_trace_key(uint8_t (&)[32], const_bytes_view) void load_trace_key(uint8_t (&buffer)[MD_HASH::DIGEST_LENGTH], const_bytes_view derivator) ^~~~~~~~~~~~~~ src/capture/cryptofile.hpp:166:10: note: no known conversion for argument 2 from ‘std::vector’ to ‘const_bytes_view’ In file included from src/transport/out_file_transport.hpp:26:0, from src/transport/crypto_transport.hpp:26, from src/transport/crypto_transport.cpp:21: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/transport/crypto_transport.cpp:31:0: src/utils/strutils.hpp:60:82: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] bool strbcpy(char* dest, array_view_const_char src, std::size_t n) noexcept; ^~~~~~~~ src/utils/strutils.hpp:61:72: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] bool strbcpy(char* dest, char const* src, std::size_t n) noexcept; ^~~~~~~~ src/utils/strutils.hpp:64:72: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] bool strbcpy(char (&dest)[N], array_view_const_char src) noexcept ^~~~~~~~ src/utils/strutils.hpp:70:62: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] [[nodiscard]] bool strbcpy(char (&dest)[N], char const* src) noexcept ^~~~~~~~ src/transport/crypto_transport.cpp: In member function ‘void OutCryptoTransport::create_hash_file(const uint8_t (&)[32], const uint8_t (&)[32])’: src/transport/crypto_transport.cpp:843:72: error: no matching function for call to ‘ocrypto::open(std::vector&)’ const ocrypto::Result res = hash_encrypter.open(this->derivator); ^ src/transport/crypto_transport.cpp:546:17: note: candidate: ocrypto::Result ocrypto::open(const_bytes_view) ocrypto::Result ocrypto::open(const_bytes_view derivator) ^~~~~~~ src/transport/crypto_transport.cpp:546:17: note: no known conversion for argument 1 from ‘std::vector’ to ‘const_bytes_view’ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/transport/crypto_transport.o" "src/transport/crypto_transport.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/transport/crypto_transport.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/transport/mwrm_reader.o In file included from src/transport/mwrm_reader.hpp:23:0, from src/transport/mwrm_reader.cpp:21: src/capture/cryptofile.hpp: In member function ‘void CryptoContext::get_derived_key(uint8_t (&)[32], const_bytes_view)’: src/capture/cryptofile.hpp:206:74: error: no matching function for call to ‘CryptoContext::load_trace_key(uint8_t [32], std::vector&)’ this->load_trace_key(this->master_key, this->master_derivator); ^ src/capture/cryptofile.hpp:166:10: note: candidate: void CryptoContext::load_trace_key(uint8_t (&)[32], const_bytes_view) void load_trace_key(uint8_t (&buffer)[MD_HASH::DIGEST_LENGTH], const_bytes_view derivator) ^~~~~~~~~~~~~~ src/capture/cryptofile.hpp:166:10: note: no known conversion for argument 2 from ‘std::vector’ to ‘const_bytes_view’ In file included from src/transport/mwrm_reader.hpp:24:0, from src/transport/mwrm_reader.cpp:21: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/transport/mwrm_reader.o" "src/transport/mwrm_reader.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/transport/mwrm_reader.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/bitmap.o In file included from src/utils/image_data_view.hpp:25:0, from src/utils/bitmap.hpp:32, from src/utils/bitmap.cpp:30: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/utils/bitmap_private_data.hpp:37:0, from src/utils/bitmap.cpp:31: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/utils/bitmap_private_data.hpp:39:0, from src/utils/bitmap.cpp:31: src/utils/sugar/numerics/safe_conversions.hpp: At global scope: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ src/utils/bitmap.cpp:389:1: error: expected ‘}’ at end of input } ^ src/utils/bitmap.cpp: At global scope: src/utils/bitmap.cpp:389:1: error: expected ‘}’ at end of input "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/utils/bitmap.o" "src/utils/bitmap.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/bitmap.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/bitmap_from_file.o In file included from src/utils/image_data_view.hpp:25:0, from src/utils/bitmap.hpp:32, from src/utils/bitmap_from_file.hpp:32, from src/utils/bitmap_from_file.cpp:30: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/utils/bitmap_private_data.hpp:37:0, from src/utils/bitmap_from_file.cpp:33: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/utils/bitmap_private_data.hpp:39:0, from src/utils/bitmap_from_file.cpp:33: src/utils/sugar/numerics/safe_conversions.hpp: At global scope: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ src/utils/bitmap_from_file.cpp:457:1: error: expected ‘}’ at end of input } ^ src/utils/bitmap_from_file.cpp: At global scope: src/utils/bitmap_from_file.cpp:457:1: error: expected ‘}’ at end of input "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/utils/bitmap_from_file.o" "src/utils/bitmap_from_file.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/bitmap_from_file.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/confdescriptor.o In file included from src/utils/confdescriptor.cpp:31:0: src/core/RDP/capabilities/order.hpp:322:15: error: specialization of ‘template class utils::enum_as_flag’ in different namespace [-fpermissive] struct utils::enum_as_flag ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/core/RDP/capabilities/order.hpp:28:0, from src/utils/confdescriptor.cpp:31: src/utils/sugar/flags.hpp:34:7: error: from definition of ‘template class utils::enum_as_flag’ [-fpermissive] class enum_as_flag ^~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/utils/confdescriptor.o" "src/utils/confdescriptor.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/confdescriptor.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/drawable.o In file included from src/utils/image_data_view.hpp:25:0, from src/utils/drawable.hpp:27, from src/utils/drawable.cpp:24: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/utils/drawable.hpp:28:0, from src/utils/drawable.cpp:24: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/utils/drawable_pointer.hpp:39:0, from src/utils/drawable.cpp:29: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/utils/drawable.cpp:33:0: src/utils/sugar/numerics/safe_conversions.hpp: At global scope: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ src/utils/drawable.cpp:1517:1: error: expected ‘}’ at end of input } ^ src/utils/drawable.cpp: At global scope: src/utils/drawable.cpp:1517:1: error: expected ‘}’ at end of input "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/utils/drawable.o" "src/utils/drawable.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/drawable.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/load_theme.o In file included from src/utils/colors.hpp:34:0, from src/utils/theme.hpp:23, from src/utils/load_theme.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/utils/theme.hpp:23:0, from src/utils/load_theme.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/utils/load_theme.o" "src/utils/load_theme.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/load_theme.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/png.o In file included from src/gdi/graphic_api.hpp:23:0, from src/utils/png.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/gdi/graphic_api.hpp:25:0, from src/utils/png.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/utils/png.cpp:22:0: src/gdi/graphic_api.hpp: At global scope: src/gdi/graphic_api.hpp:121:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{0}, ^ src/gdi/graphic_api.hpp:122:23: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{8}, ^ src/gdi/graphic_api.hpp:123:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{15}, ^ src/gdi/graphic_api.hpp:124:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{16}, ^ src/gdi/graphic_api.hpp:125:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization BitsPerPixel{24} ^ In file included from src/utils/png.cpp:23:0: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/png.cpp:32:0: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ src/utils/png.cpp:451:1: error: expected ‘}’ at end of input } ^ src/utils/png.cpp: At global scope: src/utils/png.cpp:451:1: error: expected ‘}’ at end of input "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/utils/png.o" "src/utils/png.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/png.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/rle.o In file included from src/utils/bitmap_private_data.hpp:32:0, from src/utils/rle.cpp:33: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/utils/bitmap_private_data.hpp:37:0, from src/utils/rle.cpp:33: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/utils/bitmap_private_data.hpp:39:0, from src/utils/rle.cpp:33: src/utils/sugar/numerics/safe_conversions.hpp: At global scope: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ src/utils/rle.cpp:1468:1: error: expected ‘}’ at end of input } ^ src/utils/rle.cpp: At global scope: src/utils/rle.cpp:1468:1: error: expected ‘}’ at end of input "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/utils/rle.o" "src/utils/rle.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/utils/rle.o... ...skipped rdpproxy for lack of src/main/main.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/main/rdp_client.o In file included from src/core/client_info.hpp:44:0, from src/main/rdp_client.cpp:25: src/core/RDP/capabilities/bitmapcodecs.hpp:33:19: fatal error: variant: Aucun fichier ou dossier de ce type #include ^ compilation terminated. "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -I"tests/includes" -c -o "bin/gcc-6.3.0/release/src/main/rdp_client.o" "src/main/rdp_client.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/main/rdp_client.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/rdp/new_mod_rdp.o In file included from src/mod/rdp/rdp.hpp:41:0, from src/mod/rdp/new_mod_rdp.cpp:22: src/core/RDP/capabilities/bitmapcodecs.hpp:33:19: fatal error: variant: Aucun fichier ou dossier de ce type #include ^ compilation terminated. "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/rdp/new_mod_rdp.o" "src/mod/rdp/new_mod_rdp.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/rdp/new_mod_rdp.o... gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/new_mod_vnc.o In file included from src/core/buf64k.hpp:23:0, from src/mod/vnc/vnc.hpp:28, from src/mod/vnc/new_mod_vnc.cpp:22: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/utils/crypto/cryptcontext.hpp:25:0, from src/core/RDP/sec.hpp:33, from src/core/channel_list.hpp:34, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/crypto/ssl_sign.hpp: In member function ‘void Sign::final(uint8_t (&)[OutLen])’: src/utils/crypto/ssl_sign.hpp:76:12: error: expected ‘(’ before ‘constexpr’ if constexpr (OutLen == SslMd5::DIGEST_LENGTH) { /*NOLINT*/ ^~~~~~~~~ src/utils/crypto/ssl_sign.hpp:79:9: error: ‘else’ without a previous ‘if’ else { ^~~~ In file included from src/core/front_api.hpp:27:0, from src/mod/vnc/vnc.hpp:31, from src/mod/vnc/new_mod_vnc.cpp:22: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/mod/vnc/vnc.hpp:32:0, from src/mod/vnc/new_mod_vnc.cpp:22: src/core/RDP/clipboard.hpp: In member function ‘void RDPECLIP::FormatListPDUEx::recv(InStream&, bool, bool)’: src/core/RDP/clipboard.hpp:1070:34: error: invalid conversion from ‘const uint8_t* {aka const unsigned char*}’ to ‘uint8_t* {aka unsigned char*}’ [-fpermissive] byte_ptr_cast(format_name.data()), formatName_UTF8_data_size); ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from src/utils/stream.hpp:28:0, from src/core/channel_list.hpp:28, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/utf.hpp:94:13: note: initializing argument 3 of ‘std::size_t UTF16toUTF8(const uint8_t*, std::size_t, uint8_t*, std::size_t)’ std::size_t UTF16toUTF8(const uint8_t * utf16_source, std::size_t utf16_len, uint8_t * utf8_target, std::size_t target_len) noexcept; ^~~~~~~~~~~ In file included from src/mod/vnc/vnc.hpp:32:0, from src/mod/vnc/new_mod_vnc.cpp:22: src/core/RDP/clipboard.hpp:1114:38: error: invalid conversion from ‘const uint8_t* {aka const unsigned char*}’ to ‘uint8_t* {aka unsigned char*}’ [-fpermissive] byte_ptr_cast(format_name.data()), formatName_UTF8_data_size); ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ In file included from src/utils/stream.hpp:28:0, from src/core/channel_list.hpp:28, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/utf.hpp:94:13: note: initializing argument 3 of ‘std::size_t UTF16toUTF8(const uint8_t*, std::size_t, uint8_t*, std::size_t)’ std::size_t UTF16toUTF8(const uint8_t * utf16_source, std::size_t utf16_len, uint8_t * utf8_target, std::size_t target_len) noexcept; ^~~~~~~~~~~ In file included from src/core/RDP/orders/RDPOrdersCommon.hpp:31:0, from src/core/RDP/orders/RDPOrdersPrimaryMemBlt.hpp:91, from src/mod/vnc/vnc.hpp:33, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/colors.hpp: At global scope: src/utils/colors.hpp:367:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:380:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:397:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:414:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘BGRColor color_decode(RDPColor, BitsPerPixel, const BGRPalette&)’: src/utils/colors.hpp:447:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return decode_color8()(c, palette); ^ src/utils/colors.hpp:448:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return decode_color15()(c); ^ src/utils/colors.hpp:449:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return decode_color16()(c); ^ src/utils/colors.hpp:450:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/utils/colors.hpp:451:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: return decode_color24()(c); ^ src/utils/colors.hpp: At global scope: src/utils/colors.hpp:474:61: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{8}; ^ src/utils/colors.hpp:490:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{15}; ^ src/utils/colors.hpp:511:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{16}; ^ src/utils/colors.hpp:532:62: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization static constexpr const BitsPerPixel bpp = BitsPerPixel{24}; ^ src/utils/colors.hpp: In function ‘RDPColor color_encode(BGRColor, BitsPerPixel)’: src/utils/colors.hpp:545:28: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: return encode_color8()(c); ^ src/utils/colors.hpp:546:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: return encode_color15()(c); ^ src/utils/colors.hpp:547:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: return encode_color16()(c); ^ src/utils/colors.hpp:548:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/utils/colors.hpp:549:29: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: return encode_color24()(c); ^ In file included from src/mod/vnc/vnc.hpp:37:0, from src/mod/vnc/new_mod_vnc.cpp:22: src/core/RDP/rdp_pointer.hpp: In function ‘Pointer decode_pointer(BitsPerPixel, const BGRPalette&, uint16_t, uint16_t, uint16_t, uint16_t, uint16_t, const uint8_t*, uint16_t, const uint8_t*, bool)’: src/core/RDP/rdp_pointer.hpp:630:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{1}: ^ src/core/RDP/rdp_pointer.hpp:666:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{4}: ^ src/core/RDP/rdp_pointer.hpp:677:24: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{8}: ^ src/core/RDP/rdp_pointer.hpp:678:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{15}: ^ src/core/RDP/rdp_pointer.hpp:679:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{16}: ^ src/core/RDP/rdp_pointer.hpp:680:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{24}: ^ src/core/RDP/rdp_pointer.hpp:681:25: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization case BitsPerPixel{32}: ^ src/core/RDP/rdp_pointer.hpp:701:41: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization if ((data_bpp == BitsPerPixel{32}) && (clean_up_32_bpp_cursor)) { ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_2(InStream&)’: src/core/RDP/rdp_pointer.hpp:816:44: error: cannot convert ‘uint8_t {aka unsigned char}’ to ‘BitsPerPixel’ in initialization BitsPerPixel data_bpp{stream.in_uint8()}; ^ src/core/RDP/rdp_pointer.hpp: In function ‘Pointer pointer_loader_32x32(InStream&)’: src/core/RDP/rdp_pointer.hpp:839:35: error: cannot convert ‘int’ to ‘const BitsPerPixel’ in initialization const BitsPerPixel data_bpp{24}; ^ In file included from src/core/session_reactor.hpp:28:0, from src/mod/vnc/vnc.hpp:39, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/string_c.hpp: At global scope: src/utils/string_c.hpp:30:68: error: ‘value’ declared as an ‘inline’ field static inline char const value[sizeof...(cs)+1]{cs..., '\0'}; ^ In file included from src/mod/vnc/vnc.hpp:39:0, from src/mod/vnc/new_mod_vnc.cpp:22: src/core/session_reactor.hpp:62:34: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] R : char ^~~~ src/core/session_reactor.hpp:225:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] GroupExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:266:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TopExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:293:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] TimerExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:311:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] struct [[nodiscard]] ActionExecutorBuilderImpl ^~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:990:23: error: ‘auto’ parameter not permitted in this context template ^ src/core/session_reactor.hpp: In function ‘void jln::detail::invoke(T&&, Args&& ...)’: src/core/session_reactor.hpp:993:16: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_member_function_pointer::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/sugar/array.hpp:23, from src/utils/sugar/array_view.hpp:28, from src/core/callback.hpp:29, from src/mod/mod_api.hpp:23, from src/mod/vnc/new_mod_vnc.hpp:23, from src/mod/vnc/new_mod_vnc.cpp:21: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/core/session_reactor.hpp:1099:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = SEC::write_sec_send_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = X224::write_x224_dt_tpdu_fn; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = false; MCS_SendData = MCS::SendDataRequest_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:372:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 7ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/stream.hpp: In instantiation of ‘void details_::write_packet(uint8_t*&, std::size_t&, StreamSz, Writer&) [with StreamSz = std::integral_constant; Writer = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>; uint8_t = unsigned char; std::size_t = long unsigned int]’: src/utils/stream.hpp:1171:35: required from ‘void details_::write_packets_impl(DataBufSz, HeaderBufSz, uint8_t*, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}; uint8_t = unsigned char]’ src/utils/stream.hpp:1200:27: required from ‘void details_::write_packets(DataBufSz, HeaderBufSz, TotalSz, Transport&, DataWriter&, HeaderWriters& ...) [with DataBufSz = std::integral_constant; HeaderBufSz = std::integral_constant; TotalSz = std::integral_constant; Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/utils/stream.hpp:1219:28: required from ‘void write_packets(Transport&, DataWriter, HeaderWriters ...) [with Transport = OutTransport; DataWriter = CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&)>; HeaderWriters = {SEC::write_sec_send_fn, CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]::, OutStream&, std::size_t)>, X224::write_x224_dt_tpdu_fn}]’ src/core/channel_list.hpp:391:26: required from ‘void CHANNELS::VirtualChannelPDU::send_(OutTransport, CryptContext&, int, uint16_t, uint16_t, uint32_t, uint32_t, const uint8_t*, std::size_t) [with bool enable_verbose = true; MCS_SendData = MCS::SendDataIndication_Send; uint16_t = short unsigned int; uint32_t = unsigned int; uint8_t = unsigned char; std::size_t = long unsigned int]’ src/core/channel_list.hpp:382:13: required from here src/utils/stream.hpp:1153:39: error: call of overloaded ‘buffer_t(buffer_t)’ is ambiguous OutStream ostream(data_buf); ^ In file included from src/utils/stream.hpp:30:0, from src/core/channel_list.hpp:28, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/sugar/buffer_t.hpp:35:23: note: candidate: constexpr buffer_t::buffer_t(U&&) [with U = buffer_t; typename std::enable_if, U&&>::value, bool>::type = 1u] using bytes_view::bytes_view; ^~~~~~~~~~ src/utils/sugar/buffer_t.hpp:43:5: note: candidate: buffer_t::buffer_t(T&&) [with T = buffer_t] buffer_t(T&& a) noexcept(noexcept(bytes_view(static_cast(a)))) ^~~~~~~~ src/utils/sugar/buffer_t.hpp:31:5: note: candidate: constexpr buffer_t::buffer_t(const buffer_t&) buffer_t(buffer_t const &) = default; ^~~~~~~~ src/utils/sugar/buffer_t.hpp:38:5: note: after user-defined conversion: buffer_t::buffer_t(T (&)[n]) [with T = unsigned char; long unsigned int n = 256ul] buffer_t(T (& a)[n]) noexcept ^~~~~~~~ In file included from src/core/channel_list.hpp:28:0, from src/mod/vnc/vnc.hpp:29, from src/mod/vnc/new_mod_vnc.cpp:22: src/utils/stream.hpp:405:14: note: initializing argument 1 of ‘OutStream::OutStream(buffer_t)’ explicit OutStream(buffer_t buf) noexcept ^~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fno-rtti -fsized-deallocation -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/mod/vnc/new_mod_vnc.o" "src/mod/vnc/new_mod_vnc.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/mod/vnc/new_mod_vnc.o... ...skipped rdpclient for lack of src/main/rdp_client.o... gcc.link bin/gcc-6.3.0/release/rdpinichecker bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::parse_and_log >(char const*, char const*, RdpCompression&, configs::spec_type, array_view) [clone .isra.184] » : config.cpp:(.text+0x6c5) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text+0x7e1) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)52, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::parse_and_log >, configs::spec_type > > >(char const*, char const*, std::chrono::duration >&, configs::spec_type > >, array_view) [clone .isra.216] » : config.cpp:(.text+0xb45) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text+0xc69) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)57, (char)50, (char)50, (char)51, (char)51, (char)55, (char)50, (char)48, (char)51, (char)54, (char)56, (char)53, (char)52, (char)55, (char)55, (char)53, (char)56, (char)48, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « Inifile::ConfigurationHolder::set_value(char const*, char const*, char const*) » : config.cpp:(.text+0x299b) : référence indéfinie vers « configs::detail::string_literal<(char)111, (char)117, (char)116, (char)32, (char)111, (char)102, (char)32, (char)98, (char)111, (char)117, (char)110, (char)100, (char)115, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)115, (char)32, (char)105, (char)115, (char)32, (char)50, (char)53, (char)53>::c_str » config.cpp:(.text+0x2ed2) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text+0x37f4) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text+0x39f0) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text+0x3e30) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)53, (char)93>::c_str » config.cpp:(.text+0x4977) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)48, (char)48, (char)48, (char)93>::c_str » config.cpp:(.text+0x4c43) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)54, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » config.cpp:(.text+0x4d60) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)48, (char)48, (char)93>::c_str » config.cpp:(.text+0x5697) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text+0x56dc) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)93>::c_str » config.cpp:(.text+0x589b) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)50, (char)48, (char)48, (char)48, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::parse_and_log >(char const*, char const*, char (&) [8], configs::spec_type, array_view) [clone .isra.83] » : config.cpp:(.text.unlikely+0x28) : référence indéfinie vers « configs::detail::string_literal<(char)111, (char)117, (char)116, (char)32, (char)111, (char)102, (char)32, (char)98, (char)111, (char)117, (char)110, (char)100, (char)115, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)115, (char)32, (char)105, (char)115, (char)32, (char)56>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::parse_and_log >(char const*, char const*, char (&) [512], configs::spec_type, array_view) [clone .isra.96] » : config.cpp:(.text.unlikely+0x97) : référence indéfinie vers « configs::detail::string_literal<(char)111, (char)117, (char)116, (char)32, (char)111, (char)102, (char)32, (char)98, (char)111, (char)117, (char)110, (char)100, (char)115, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)115, (char)32, (char)105, (char)115, (char)32, (char)53, (char)49, (char)50>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::parse_and_log, configs::spec_type >(char const*, char const*, std::array&, configs::spec_type, array_view) [clone .isra.109] » : config.cpp:(.text.unlikely+0x190) : référence indéfinie vers « configs::detail::string_literal<(char)98, (char)97, (char)100, (char)32, (char)108, (char)101, (char)110, (char)103, (char)116, (char)104, (char)44, (char)32, (char)115, (char)104, (char)111, (char)117, (char)108, (char)100, (char)32, (char)98, (char)101, (char)32, (char)54, (char)52>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::parse_and_log >, configs::spec_type >, 100l, 10000l> > >(char const*, char const*, std::chrono::duration >&, configs::spec_type >, 100l, 10000l> >, array_view) [clone .isra.175] » : config.cpp:(.text.unlikely+0x241) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)49, (char)48, (char)48, (char)44, (char)32, (char)49, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::parse_and_log >, configs::spec_type >, 0l, 300000l> > >(char const*, char const*, std::chrono::duration >&, configs::spec_type >, 0l, 300000l> >, array_view) [clone .isra.177] » : config.cpp:(.text.unlikely+0x2e6) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)51, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::parse_and_log >, configs::spec_type >, 0l, 172800000l> > >(char const*, char const*, std::chrono::duration >&, configs::spec_type >, 0l, 172800000l> >, array_view) [clone .isra.181] » : config.cpp:(.text.unlikely+0x38b) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)55, (char)50, (char)56, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::detail::parse_integral(unsigned long&, array_view, std::integral_constant, std::integral_constant) » : config.cpp:(.text._ZN7configs6detail14parse_integralILb0EmLm0ELm3EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0EmLm0ELm3EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x131) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text._ZN7configs6detail14parse_integralILb0EmLm0ELm3EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0EmLm0ELm3EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x279) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)51, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::detail::parse_integral_list(std::__cxx11::basic_string, std::allocator >&, array_view) » : config.cpp:(.text._ZN7configs6detail19parse_integral_listIjEENS_11parse_errorERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE10array_viewIKcE[_ZN7configs6detail19parse_integral_listIjEENS_11parse_errorERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE10array_viewIKcE]+0x1a5) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::detail::parse_integral(unsigned int&, array_view, std::integral_constant, std::integral_constant) » : config.cpp:(.text._ZN7configs6detail14parse_integralILb0EjLj0ELj4294967295EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0EjLj0ELj4294967295EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x131) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::detail::parse_integral(unsigned long&, array_view, std::integral_constant, std::integral_constant) » : config.cpp:(.text._ZN7configs6detail14parse_integralILb0EmLm0ELm7EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0EmLm0ELm7EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x131) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text._ZN7configs6detail14parse_integralILb0EmLm0ELm7EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0EmLm0ELm7EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x279) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::detail::parse_integral(long&, array_view, std::integral_constant, std::integral_constant) » : config.cpp:(.text._ZN7configs6detail14parse_integralILb0ElLl0ELl9223372036854775807EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0ElLl0ELl9223372036854775807EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x131) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » config.cpp:(.text._ZN7configs6detail14parse_integralILb0ElLl0ELl9223372036854775807EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0ElLl0ELl9223372036854775807EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x278) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)57, (char)50, (char)50, (char)51, (char)51, (char)55, (char)50, (char)48, (char)51, (char)54, (char)56, (char)53, (char)52, (char)55, (char)55, (char)53, (char)56, (char)48, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o : Dans la fonction « configs::parse_error configs::detail::parse_integral_list(std::__cxx11::basic_string, std::allocator >&, array_view) » : config.cpp:(.text._ZN7configs6detail19parse_integral_listIiEENS_11parse_errorERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE10array_viewIKcE[_ZN7configs6detail19parse_integral_listIiEENS_11parse_errorERNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE10array_viewIKcE]+0x1a5) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)49>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg6crypto4key1EE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg6crypto4key1EE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x20) : référence indéfinie vers « configs::detail::string_literal<(char)98, (char)97, (char)100, (char)32, (char)108, (char)101, (char)110, (char)103, (char)116, (char)104, (char)44, (char)32, (char)115, (char)104, (char)111, (char)117, (char)108, (char)100, (char)32, (char)98, (char)101, (char)32, (char)54, (char)52>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg6crypto4key0EE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg6crypto4key0EE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x20) : référence indéfinie vers « configs::detail::string_literal<(char)98, (char)97, (char)100, (char)32, (char)108, (char)101, (char)110, (char)103, (char)116, (char)104, (char)44, (char)32, (char)115, (char)104, (char)111, (char)117, (char)108, (char)100, (char)32, (char)98, (char)101, (char)32, (char)54, (char)52>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context7opt_bppEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context7opt_bppEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0xa3) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp27server_cert_success_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp27server_cert_success_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp27server_cert_success_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp27server_cert_success_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17c) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « configs::parse_error configs::detail::parse_integral(unsigned long&, array_view, std::integral_constant, std::integral_constant) » : ini_checker.cpp:(.text._ZN7configs6detail14parse_integralILb0EmLm0ELm2EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0EmLm0ELm2EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x50) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7configs6detail14parse_integralILb0EmLm0ELm2EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0EmLm0ELm2EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x11b) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)50, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp17server_cert_checkEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp17server_cert_checkEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp17server_cert_checkEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp17server_cert_checkEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17c) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)51, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context24selector_number_of_pagesEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context24selector_number_of_pagesEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp69session_probe_clipboard_based_launcher_clipboard_initialization_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp69session_probe_clipboard_based_launcher_clipboard_initialization_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp69session_probe_clipboard_based_launcher_clipboard_initialization_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp69session_probe_clipboard_based_launcher_clipboard_initialization_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x185) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)57, (char)50, (char)50, (char)51, (char)51, (char)55, (char)50, (char)48, (char)51, (char)54, (char)56, (char)53, (char)52, (char)55, (char)55, (char)53, (char)56, (char)48, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context9opt_widthEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context9opt_widthEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)53>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context10opt_heightEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context10opt_heightEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)53>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp50session_probe_clipboard_based_launcher_short_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp50session_probe_clipboard_based_launcher_short_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp50session_probe_clipboard_based_launcher_short_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp50session_probe_clipboard_based_launcher_short_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x185) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)57, (char)50, (char)50, (char)51, (char)51, (char)55, (char)50, (char)48, (char)51, (char)54, (char)56, (char)53, (char)52, (char)55, (char)55, (char)53, (char)56, (char)48, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp49session_probe_clipboard_based_launcher_long_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp49session_probe_clipboard_based_launcher_long_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp49session_probe_clipboard_based_launcher_long_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp49session_probe_clipboard_based_launcher_long_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x185) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)57, (char)50, (char)50, (char)51, (char)51, (char)55, (char)50, (char)48, (char)51, (char)54, (char)56, (char)53, (char)52, (char)55, (char)55, (char)53, (char)56, (char)48, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context29rail_disconnect_message_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context29rail_disconnect_message_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context29rail_disconnect_message_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context29rail_disconnect_message_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x185) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)57, (char)50, (char)50, (char)51, (char)51, (char)55, (char)50, (char)48, (char)51, (char)54, (char)56, (char)53, (char)52, (char)55, (char)55, (char)53, (char)56, (char)48, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp26server_cert_create_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp26server_cert_create_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp26server_cert_create_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp26server_cert_create_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17c) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp27server_cert_failure_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp27server_cert_failure_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp27server_cert_failure_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp27server_cert_failure_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17c) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg11session_log28keyboard_input_masking_levelEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg11session_log28keyboard_input_masking_levelEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg11session_log28keyboard_input_masking_levelEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg11session_log28keyboard_input_masking_levelEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17c) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)51, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7globals18inactivity_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7globals18inactivity_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7globals18inactivity_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7globals18inactivity_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x180) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)57, (char)50, (char)50, (char)51, (char)51, (char)55, (char)50, (char)48, (char)51, (char)54, (char)56, (char)53, (char)52, (char)55, (char)55, (char)53, (char)56, (char)48, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg5video20disable_keyboard_logEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg5video20disable_keyboard_logEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg5video20disable_keyboard_logEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg5video20disable_keyboard_logEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17c) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp29server_access_allowed_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp29server_access_allowed_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp29server_access_allowed_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp29server_access_allowed_messageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17c) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp50session_probe_clipboard_based_launcher_start_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp50session_probe_clipboard_based_launcher_start_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp50session_probe_clipboard_based_launcher_start_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp50session_probe_clipboard_based_launcher_start_delayEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x185) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)57, (char)50, (char)50, (char)51, (char)51, (char)55, (char)50, (char)48, (char)51, (char)54, (char)56, (char)53, (char)52, (char)55, (char)55, (char)53, (char)56, (char)48, (char)55, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_memory_usage_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_memory_usage_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_memory_usage_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_memory_usage_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17f) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)50, (char)48, (char)48, (char)48, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_handle_usage_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_handle_usage_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x83) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_handle_usage_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_handle_usage_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x17f) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context21selector_current_pageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context21selector_current_pageEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context10opt_qscaleEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context10opt_qscaleEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context11opt_bitrateEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context11opt_bitrateEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg6client15keyboard_layoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg6client15keyboard_layoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context13opt_framerateEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context13opt_framerateEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o:ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7context27auth_notify_rail_exec_flagsEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7context27auth_notify_rail_exec_flagsEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0x8b) : encore plus de références indéfinies suivent vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)49, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « configs::parse_error configs::detail::parse_integral(long&, array_view, std::integral_constant, std::integral_constant) » : ini_checker.cpp:(.text._ZN7configs6detail14parse_integralILb0ElLln9223372036854775808ELl9223372036854775807EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE[_ZN7configs6detail14parse_integralILb0ElLln9223372036854775808ELl9223372036854775807EEENS_11parse_errorERT0_10array_viewIKcESt17integral_constantIS3_XT1_EES8_IS3_XT2_EE]+0x50) : référence indéfinie vers « configs::detail::string_literal<(char)116, (char)111, (char)111, (char)32, (char)108, (char)97, (char)114, (char)103, (char)101, (char)44, (char)32, (char)108, (char)105, (char)109, (char)105, (char)116, (char)101, (char)100, (char)32, (char)116, (char)111, (char)50, (char)48>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp40session_probe_disconnected_session_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp40session_probe_disconnected_session_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0xab) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)55, (char)50, (char)56, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp31session_probe_keepalive_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp31session_probe_keepalive_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0xab) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)54, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp28session_probe_launch_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp28session_probe_launch_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0xab) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)51, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7globals16mod_recv_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7globals16mod_recv_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0xb3) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)49, (char)48, (char)48, (char)44, (char)32, (char)49, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp37session_probe_launch_fallback_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp37session_probe_launch_fallback_timeoutEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0xab) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)51, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_idle_session_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp32session_probe_idle_session_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0xab) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)55, (char)50, (char)56, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » bin/gcc-6.3.0/release/src/main/ini_checker.o : Dans la fonction « Inifile::Field::parse(configs::VariablesConfiguration&, array_view) » : ini_checker.cpp:(.text._ZN7Inifile5FieldIN3cfg7mod_rdp44session_probe_disconnected_application_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE[_ZN7Inifile5FieldIN3cfg7mod_rdp44session_probe_disconnected_application_limitEE5parseERN7configs22VariablesConfigurationE10array_viewIKcE]+0xab) : référence indéfinie vers « configs::detail::string_literal<(char)105, (char)110, (char)118, (char)97, (char)108, (char)105, (char)100, (char)32, (char)114, (char)97, (char)110, (char)103, (char)101, (char)32, (char)105, (char)110, (char)32, (char)91, (char)48, (char)44, (char)32, (char)49, (char)55, (char)50, (char)56, (char)48, (char)48, (char)48, (char)48, (char)48, (char)93>::c_str » collect2: error: ld returned 1 exit status "g++" -o "bin/gcc-6.3.0/release/rdpinichecker" -Wl,--start-group "bin/gcc-6.3.0/release/src/main/ini_checker.o" "bin/gcc-6.3.0/release/app_path_exe.o" "bin/gcc-6.3.0/release/projects/redemption_configs/redemption_src/configs/config.o" "bin/gcc-6.3.0/release/src/utils/cfgloader.o" "bin/gcc-6.3.0/release/src/utils/hexdump.o" "bin/gcc-6.3.0/release/log_print.o" -Wl,-Bstatic -Wl,-Bdynamic -Wl,--end-group ...failed gcc.link bin/gcc-6.3.0/release/rdpinichecker... gcc.compile.c++ bin/gcc-6.3.0/release/src/lib/do_recorder.cpp.lib.o In file included from src/lib/do_recorder.hpp:11:0, from src/lib/do_recorder.cpp:9: src/capture/cryptofile.hpp: In member function ‘void CryptoContext::get_derived_key(uint8_t (&)[32], const_bytes_view)’: src/capture/cryptofile.hpp:206:74: error: no matching function for call to ‘CryptoContext::load_trace_key(uint8_t [32], std::vector&)’ this->load_trace_key(this->master_key, this->master_derivator); ^ src/capture/cryptofile.hpp:166:10: note: candidate: void CryptoContext::load_trace_key(uint8_t (&)[32], const_bytes_view) void load_trace_key(uint8_t (&buffer)[MD_HASH::DIGEST_LENGTH], const_bytes_view derivator) ^~~~~~~~~~~~~~ src/capture/cryptofile.hpp:166:10: note: no known conversion for argument 2 from ‘std::vector’ to ‘const_bytes_view’ In file included from src/capture/wrm_meta_chunk.hpp:23:0, from src/capture/file_to_graphic.hpp:24, from src/lib/do_recorder.cpp:14: src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bits_per_pixel(BitsPerPixel)’: src/gdi/screen_info.hpp:51:37: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization return nb_bits == BitsPerPixel{8} ^ src/gdi/screen_info.hpp:52:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{15} ^ src/gdi/screen_info.hpp:53:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{16} ^ src/gdi/screen_info.hpp:54:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{24} ^ src/gdi/screen_info.hpp:55:38: error: cannot convert ‘int’ to ‘BitsPerPixel’ in initialization || nb_bits == BitsPerPixel{32} ^ src/gdi/screen_info.hpp: In function ‘constexpr bool is_normalized_bytes_per_pixel(BytesPerPixel)’: src/gdi/screen_info.hpp:61:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization return nb_bytes == BytesPerPixel{1} ^ src/gdi/screen_info.hpp:62:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{2} ^ src/gdi/screen_info.hpp:63:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{3} ^ src/gdi/screen_info.hpp:64:39: error: cannot convert ‘int’ to ‘BytesPerPixel’ in initialization || nb_bytes == BytesPerPixel{4} ^ In file included from src/capture/wrm_meta_chunk.hpp:24:0, from src/capture/file_to_graphic.hpp:24, from src/lib/do_recorder.cpp:14: src/transport/transport.hpp: At global scope: src/transport/transport.hpp:60:30: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] TlsResult { Ok, Fail, Want, }; ^~~~~~~~~ src/transport/transport.hpp:90:37: warning: ‘nodiscard’ attribute directive ignored [-Wattributes] enum class [[nodiscard]] Read : bool { Eof, Ok }; ^~~~ In file included from src/capture/wrm_meta_chunk.hpp:27:0, from src/capture/file_to_graphic.hpp:24, from src/lib/do_recorder.cpp:14: src/utils/sugar/numerics/safe_conversions.hpp:152:60: error: ‘is_enum_v’ is not a member of ‘std’ struct underlying_type_or_integral>> ^~~ src/utils/sugar/numerics/safe_conversions.hpp:152:75: error: template argument 1 is invalid struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:152:76: error: template argument 2 is invalid struct underlying_type_or_integral>> ^~ src/utils/sugar/numerics/safe_conversions.hpp:152:78: error: expected unqualified-id before ‘>’ token struct underlying_type_or_integral>> ^ src/utils/sugar/numerics/safe_conversions.hpp:153:48: warning: extra ‘;’ [-Wpedantic] { using type = std::underlying_type_t; }; ^ src/utils/sugar/numerics/safe_conversions.hpp: In function ‘constexpr Dst detail::saturated_cast(detail::type_, Src)’: src/utils/sugar/numerics/safe_conversions.hpp:195:12: error: expected ‘(’ before ‘constexpr’ if constexpr (std::is_signed::value == std::is_signed::value && sizeof(Dst) >= sizeof(Src)) { ^~~~~~~~~ src/utils/sugar/numerics/safe_conversions.hpp:201:12: error: expected ‘(’ before ‘constexpr’ if constexpr (!std::is_signed::value && std::is_signed::value) { ^~~~~~~~~ In file included from src/cxx/cxx.hpp:26:0, from src/utils/log.hpp:33, from src/capture/cryptofile.hpp:25, from src/lib/do_recorder.hpp:11, from src/lib/do_recorder.cpp:9: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/transport/gzip_compression_transport.hpp:62:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/transport/gzip_compression_transport.hpp: At global scope: src/cxx/diagnostic.hpp:25:31: error: expected ‘}’ before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/transport/gzip_compression_transport.hpp:62:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ src/cxx/diagnostic.hpp:25:31: error: expected declaration before end of line # define REDEMPTION_PRAGMA(X) _Pragma(#X) ^ src/cxx/diagnostic.hpp:28:37: note: in expansion of macro ‘REDEMPTION_PRAGMA’ # define REDEMPTION_DIAGNOSTIC_PUSH REDEMPTION_PRAGMA(GCC diagnostic push) ^~~~~~~~~~~~~~~~~ src/transport/gzip_compression_transport.hpp:62:9: note: in expansion of macro ‘REDEMPTION_DIAGNOSTIC_PUSH’ REDEMPTION_DIAGNOSTIC_PUSH ^~~~~~~~~~~~~~~~~~~~~~~~~~ "g++" -ftemplate-depth-128 -O3 -finline-functions -Wno-inline -Wall -fPIC -Wall -Warray-bounds=2 -Wcast-align -Wcast-qual -Wconditionally-supported -Wdisabled-optimization -Wdouble-promotion -Wduplicated-cond -Wextra -Wfloat-conversion -Wfloat-equal -Wformat-security -Wformat-signedness -Wformat=2 -Wlogical-op -Wmissing-declarations -Wmissing-include-dirs -Wnon-virtual-dtor -Wnull-dereference -Wold-style-cast -Wopenmp-simd -Woverloaded-virtual -Wpacked -Wredundant-decls -Wsized-deallocation -Wstrict-null-sentinel -Wsuggest-attribute=noreturn -Wsuggest-override -Wtrampolines -Wundef -Wuninitialized -Wunused-macros -Wuseless-cast -Wvector-operation-performance -Wvla -Wzero-as-null-pointer-constant -fPIC -fno-rtti -fsized-deallocation -fvisibility=hidden -msse3 -pedantic -std=c++17 -DNDEBUG -DZLIB_CONST -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -I"include" -I"modules/includes" -I"modules/ppocr/includes/mln" -I"modules/ppocr/src" -I"projects/ocr1/include" -I"projects/redemption_configs/autogen/include" -I"projects/redemption_configs/redemption_src" -I"src" -I"src/system/linux" -c -o "bin/gcc-6.3.0/release/src/lib/do_recorder.cpp.lib.o" "src/lib/do_recorder.cpp" ...failed gcc.compile.c++ bin/gcc-6.3.0/release/src/lib/do_recorder.cpp.lib.o... ...skipped libredrec.so for lack of src/lib/do_recorder.cpp.lib.o... ...failed updating 82 targets... ...skipped 3 targets...