microsoft/WinDbg-Samples

SymBuilder Fails to Compile With Undefined Type Error From DbgModelClientEx.h

trustednstaller opened this issue · 1 comments

When trying to build SymBuilder the following error occurs on compilation:

1>...\WinDbg-Samples\TargetComposition\SymBuilder\packages\Microsoft.Debugging.DataModel.CppLib.1.0.2\build\native\include\DbgModelClientEx.h(3576,5): error C2027: use of undefined type 'Debugger::DataModel::ClientEx::Object'
1>...\WinDbg-Samples\TargetComposition\SymBuilder\packages\Microsoft.Debugging.DataModel.CppLib.1.0.2\build\native\include\DbgModelClientEx.h(423,7): message : see declaration of 'Debugger::DataModel::ClientEx::Object'

Assuming it's something templately within SymBuilder that it's not liking as the latest DbgModelClientEx.h (same as the one used for SymBuilder) builds fine with a separate WinDbg extension. Specifically, PackValues is where the error points to.

Update: I only get this error with the latest build tools. 2019 build tools (v142) does not experience this issue. So the issue does indeed stem directly from DbgModelClientEx.h as with the new toolset, I cannot build other extensions with it.

Update: setting the /permissive compiler flag to override /permissive- solves the above DbgModelClientEx.h issue. This should be noted somewhere for all uses w/ the client library otherwise headaches will ensue for those not versed in the template metaprogramming metaverse.