Ran into this same problem myself. The issue here is that the ymath header seems to be assuming we're compiling as C++. Because the VS project will compile it as C (default since plgridd has a .c extension), the syntax in the declaration of things like _Denorm (without 'union' in the type specifier) is illegal. In Visual Studio, if you right click on the plgridd.c file, select properties, then navigate to Advanced -> Compile As and select "Compile as C++ Code (/TP)", it will build. I cannot speak to whether the resulting plgridd functions work, because I don't use them.
Last edit: Aaron Hexamer 2020-08-30
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Громов Всеволод Владимирович
Ran into this same problem myself. The issue here is that the ymath header seems to be assuming we're compiling as C++. Because the VS project will compile it as C (default since plgridd has a .c extension), the syntax in the declaration of things like _Denorm (without 'union' in the type specifier) is illegal. In Visual Studio, if you right click on the plgridd.c file, select properties, then navigate to Advanced -> Compile As and select "Compile as C++ Code (/TP)", it will build. I cannot speak to whether the resulting plgridd functions work, because I don't use them.
Last edit: Aaron Hexamer 2020-08-30