Garmaine Staff asked 2 years ago
This question already has answers here:;>Why does std::numeric_limits<long long>::max() fail? [duplicate] (1 answer)
Closed 9 hours ago.

I´m trying to use the boost Library example for a websocketserver ( inside a DLL Project. I want to compile it into a single DLL.
It´s completely working inside a console Application, but if I move the code to my DLL Project I can´t even use the needed includes. This problem also appears on blank dll Projects with the same include configuration as the console app.
The include "boost/beast/core.hpp" failes with the following errors (all in the file "boost\beast\core\impl\file_stdio.ipp" in line 244):

  • '(': illegal token on right side of '::'
  • type 'unknown-type' unexpected
  • syntax error: 'unknown-type' should be preceded by '('
  • syntax error: ')'
  • syntax error: missing ';' before '{'

I´m using the boost Version 1.72.0
I´ve got no idea what the difference between the console App and an DLL is. Is it even possible to use the library properly for a DLL? If yes, do you have any ideas what I´m doing wrong?

Edit: The code causing the error inside the boost library is the following:

if(offset > static_cast<std::uint64_t>(std::numeric_limits<long>::max()))
    ec = make_error_code(errc::invalid_seek);

especially the "::max()" causes the error