Skip to content

Conversation

@Shauren
Copy link
Contributor

@Shauren Shauren commented Sep 3, 2020

Removed __kernel_entry usage from Nt* function typedefs, is is part of SAL annoations, not neccessary for proper signature and calling convention

Replaced global DWORD with ::boost::winapi::DWORD_

Also should fix #96 (not verified, I use msvc, not mingw but error appears on the same line)

@klemens-morgenstern
Copy link
Collaborator

What version of MSVC are you using? I ran into issues with MSVC which is why I added the annotations.

@Shauren
Copy link
Contributor Author

Shauren commented Sep 22, 2020

Microsoft Visual Studio Community 2019
Version 16.7.3
v142 toolset
Microsoft (R) C/C++ Optimizing Compiler Version 19.27.29111 for x64

@Shauren
Copy link
Contributor Author

Shauren commented Sep 22, 2020

I'll also add that __kernel_entry usage only causes issues with boost 1.73 and newer, because of this change in boost/winapi boostorg/winapi@c523cc4

Here is a part of /showIncludes trace with older version

Note: including file: C:/data/libraries/installed/x64-windows/include\boost/process/args.hpp
...
Note: including file:    C:/data/libraries/installed/x64-windows/include\boost/winapi/get_last_error.hpp
Note: including file:     C:/data/libraries/installed/x64-windows/include\boost/winapi/basic_types.hpp
...
Note: including file:      C:/WinSdk/Include/10.0.18362.0/shared\winerror.h
Note: including file:       C:/WinSdk/Include/10.0.18362.0/shared\specstrings.h
Note: including file:        C:/WinSdk/Include/10.0.18362.0/shared\specstrings_strict.h
Note: including file:         C:/WinSdk/Include/10.0.18362.0/shared\specstrings_undef.h

specstrings is where that define lives

@p13l13d13
Copy link

@klemens-morgenstern any updates on this? I can confirm that this PR fixes the issue on latest MSVC:

Microsoft (R) C/C++ Optimizing Compiler Version 19.27.29112 for x86

from Visual Studio 2019 16.7.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

boost v1.71 - Program fails to compile after including header : <boost/process.hpp>

3 participants