c89 and c11 compile problem on HPE NonStop platform. #4077
Unanswered
Watchman58
asked this question in
Q&A
Replies: 1 comment
-
BTW I am using version 3.10.5 of nlohmann/json |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I am using the nlohmann/json toolkit on this platform to build a new product with HPE's ported GNU C++ compiler. I have tried with both the c89 and c11 compilers so that is STL version 3 and 4 respectively. It has an SVR4 compliant unix shell called OSS, that is layered on top of the Guardian NonStop operating system, and the compiler runs in this environment. It is conceptually similar to zOS layered on top of mainframe MVS. There are a huge number of applications and open source frameworks that have been successfully ported over the last 3 decades so its pretty solid.
This is the first time I am using this framework so please pardon me if this seems like a dumb question. I don't fundamentally understand how to resolve this. Note that if you copy/paste the error message into a document and change the font to courier new, the ^ will line up with the symbol in error. I am getting the following compile errors on std::declval:
make all
Building file: ../source/ANCREATE.cpp
Invoking: C++ Compiler (TNS/X)
c11 -Wcplusplus -I"C:\Program Files (x86)\HPE NonStop\L21.06\usr\include" -I"D:\workspace-e2s\e2mxDll\include" -g -O0 -Wsystype=guardian -Wcall_shared -c -o "source/ANCREATE.o" "../source/ANCREATE.cpp" &&
c11 -Wcplusplus -I"C:\Program Files (x86)\HPE NonStop\L21.06\usr\include" -I"D:\workspace-e2s\e2mxDll\include" -g -O0 -Wsystype=guardian -Wcall_shared -c -WM "../source/ANCREATE.cpp" | grep -v -e 'C:\Program Files (x86)\HPE NonStop\L21.06\usr\include' -e 'ANCREATE.cpp' | sed -e 's/[ ].*ANCREATE\Debug\..// ..//g' >'source/ANCREATE.d'
auto get_ptr() noexcept -> ### decltype(std::declval<basic_json_t&>().get_impl_ptr(std::declval()))
^
"D:\workspace-e2s\e2mxDll\include\nlohmann/json.hpp", line 1537: error(163):
incomplete type is not allowed
detected during instantiation of class
"nlohmann::basic_json<std::map, std::vector, std::string,
bool, int64_t, uint64_t, double, std::allocator,
nlohmann::adl_serializer, std::vector<uint8_t,
std::allocator<uint8_t>>>" at line 4737
"D:\workspace-e2s\e2mxDll\include\nlohmann/json.hpp", line 1548: error(163):
incomplete type is not allowed
detected during instantiation of class
"nlohmann::basic_json<std::map, std::vector, std::string,
bool, int64_t, uint64_t, double, std::allocator,
nlohmann::adl_serializer, std::vector<uint8_t,
std::allocator<uint8_t>>>" at line 4737
"D:\workspace-e2s\e2mxDll\include\nlohmann/json.hpp", line 1702: error(163):
incomplete type is not allowed
detected during instantiation of class
"nlohmann::basic_json<std::map, std::vector, std::string,
bool, int64_t, uint64_t, double, std::allocator,
nlohmann::adl_serializer, std::vector<uint8_t,
std::allocator<uint8_t>>>" at line 4737
"D:\workspace-e2s\e2mxDll\include\nlohmann/json.hpp", line 1738: error(163):
incomplete type is not allowed
detected during instantiation of class
"nlohmann::basic_json<std::map, std::vector, std::string,
bool, int64_t, uint64_t, double, std::allocator,
nlohmann::adl_serializer, std::vector<uint8_t,
std::allocator<uint8_t>>>" at line 4737
"D:\workspace-e2s\e2mxDll\include\nlohmann/json.hpp", line 1777: error(163):
incomplete type is not allowed
detected during instantiation of class
"nlohmann::basic_json<std::map, std::vector, std::string,
bool, int64_t, uint64_t, double, std::allocator,
nlohmann::adl_serializer, std::vector<uint8_t,
std::allocator<uint8_t>>>" at line 4737
Thanks in advance for the assist...
Dean
Beta Was this translation helpful? Give feedback.
All reactions