-
Notifications
You must be signed in to change notification settings - Fork 120
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Remove D3DCOMPILER_DLL
constant
#1317
Comments
@damyanp which namespace should these all live in? |
They should all be under the Direct3D.Fxc namespace. |
So _A and _W are scraped from the headers while the unqualified version is manually defined and in the wrong namespace. Do we want this manual definition? Does it work correctly today if you pass it into an API that expects the _A version for example? |
The values of these defines are only intended to be passed in to LoadLibrary. The UNICODE define picks the unsuffixed version: // Current name of the DLL shipped in the same SDK as this header.
#define D3DCOMPILER_DLL_W L"d3dcompiler_47.dll"
#define D3DCOMPILER_DLL_A "d3dcompiler_47.dll"
// Current HLSL compiler version.
#define D3D_COMPILER_VERSION 47
#ifdef UNICODE
#define D3DCOMPILER_DLL D3DCOMPILER_DLL_W
#else
#define D3DCOMPILER_DLL D3DCOMPILER_DLL_A
#endif How have we been dealing with the other A/W suffixes? eg OutputDebugString/OutputDebugStringW/OutputDebugStringA in other places in the metadata? I expect we should follow whatever is done for these. |
Windows.Win32.Graphics.Hlsl.Apis.D3DCOMPILER_DLL => Windows.Win32.Graphics.Direct3D.Fxc.Apis.D3DCOMPILER_DLL |
Turns out the manual definition was in fact unnecessary and removing it allowed the constant to naturally be scraped and placed in the right namespace. This is how other similar constants are handled. |
The latest version has a new |
The constant existed previously, we just changed the namespace with this bug. We can remove it if it's unnecessary. |
D3DCOMPILER_DLL
and friendsD3DCOMPILER_DLL
constant
Yep, just catching up. 😋 I didn't think of the inconsistency of its existing at all until I saw them all in the same namespace. |
Windows.Win32.Graphics.Direct3D.Fxc.Apis.D3DCOMPILER_DLL removed |
Just noticed the odd namespace placement of these similar constants. Is that intentional?
The text was updated successfully, but these errors were encountered: