dolphin/Source/Core/VideoBackends/D3D12
Phil Christensen 2ed61b0ee1 C++ conformance fixes (MSVC /permissive-)
We (the Microsoft C++ team) use the dolphin project as part of our "Real world code" tests.
I noticed a few issues in windows specific code when building dolphin with the MSVC compiler
in its conformance mode (/permissive-).  For more information on /permissive- see our blog
https://blogs.msdn.microsoft.com/vcblog/2016/11/16/permissive-switch/.

These changes are to address 3 different types of issues:

1) Use of qualified names in member declarations

    struct A {
        void A::f() { } // error C4596: illegal qualified name in member declaration
                        // remove redundant 'A::' to fix
    };

2) Binding a non-const reference to a temporary

    struct S{};
  
    // If arg is in 'in' parameter, then it should be made const.
    void func(S& arg){}
  
    int main() {
      //error C2664: 'void func(S &)': cannot convert argument 1 from 'S' to 'S &'
      //note: A non-const reference may only be bound to an lvalue
      func( S() );
   
      //Work around this by creating a local, and using it to call the function
      S s;
      func( s );
    }

3) Add missing #include <intrin.h>

Because of the workaround you are using in the code you will need to include
this.  This is because of changes in the libraries and not /permissive-
2017-02-15 20:37:04 -08:00
..
BoundingBox.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
BoundingBox.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
CMakeLists.txt cmake: Build D3D and D3D12 video backends 2017-01-21 00:35:55 +01:00
D3D12.vcxproj D3D12: Implement XFB encoding/decoding (support Real XFB) 2016-05-08 23:18:51 +10:00
D3D12.vcxproj.filters D3D12: Implement XFB encoding/decoding (support Real XFB) 2016-05-08 23:18:51 +10:00
D3DBase.cpp D3DBase: Create the swapchain in fullscreen mode if enabled. 2016-11-11 20:36:10 +01:00
D3DBase.h D3DBase: Create the swapchain in fullscreen mode if enabled. 2016-11-11 20:36:10 +01:00
D3DCommandListManager.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DCommandListManager.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DDescriptorHeapManager.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DDescriptorHeapManager.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DQueuedCommandList.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DQueuedCommandList.h specify custom brace style to fix unions 2017-01-05 12:55:13 +01:00
D3DShader.cpp Core: Remove double newlines at the end of *_LOG messages. 2016-11-02 02:09:33 +00:00
D3DShader.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DState.cpp Merge pull request #4383 from Sintendo/minor-text-fixes 2016-10-31 12:51:42 +01:00
D3DState.h specify custom brace style to fix unions 2017-01-05 12:55:13 +01:00
D3DStreamBuffer.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DStreamBuffer.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
D3DTexture.cpp Common: Add alignment header 2016-12-06 20:33:53 +01:00
D3DTexture.h Fix D3D12 headers missing includes. 2016-06-24 11:14:10 +00:00
D3DUtil.cpp RenderBase: Forward declare EFBAccessType 2017-01-23 12:41:26 -05:00
D3DUtil.h RenderBase: Forward declare EFBAccessType 2017-01-23 12:41:26 -05:00
FramebufferManager.cpp FramebufferManagerBase: Return a std::pair from GetTargetSize 2017-02-03 15:27:53 -05:00
FramebufferManager.h FramebufferManagerBase: Return a std::pair from GetTargetSize 2017-02-03 15:27:53 -05:00
NativeVertexFormat.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
NativeVertexFormat.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
PSTextureEncoder.cpp ShaderGenCommon: Remove unnecessary includes 2017-02-01 12:19:55 -05:00
PSTextureEncoder.h ShaderGenCommon: Remove unnecessary includes 2017-02-01 12:19:55 -05:00
PerfQuery.cpp Improve PerfQuery accuracy 2016-07-04 18:54:49 +10:00
PerfQuery.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
Render.cpp ShaderGenCommon: Remove unnecessary includes 2017-02-01 12:19:55 -05:00
Render.h RenderBase: Forward declare EFBAccessType 2017-01-23 12:41:26 -05:00
ShaderCache.cpp VideoCommon: Make dst_alpha state implicit. 2017-01-04 20:02:31 +01:00
ShaderCache.h ShaderGenCommon: Remove unnecessary includes 2017-02-01 12:19:55 -05:00
ShaderConstantsManager.cpp Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
ShaderConstantsManager.h ShaderGenCommon: Remove unnecessary includes 2017-02-01 12:19:55 -05:00
StaticShaderCache.cpp TextureCache: Use same color coefficients for EFB2Tex as EFB2RAM 2016-12-15 02:20:46 +10:00
StaticShaderCache.h Fix D3D12 headers missing includes. 2016-06-24 11:14:10 +00:00
TextureCache.cpp C++ conformance fixes (MSVC /permissive-) 2017-02-15 20:37:04 -08:00
TextureCache.h TextureCache: Drop unused parameter in backend API. 2016-12-26 22:10:32 +01:00
TextureEncoder.h ShaderGenCommon: Remove unnecessary includes 2017-02-01 12:19:55 -05:00
VertexManager.cpp RenderBase: Forward declare EFBAccessType 2017-01-23 12:41:26 -05:00
VertexManager.h VideoCommon: Make dst_alpha state implicit. 2017-01-04 20:02:31 +01:00
VideoBackend.h VideoCommon: Drop GetConfigName. 2016-06-26 12:34:59 +02:00
XFBEncoder.cpp LightingShaderGen: Remove unnecessary includes 2017-02-01 01:06:00 -05:00
XFBEncoder.h Reformat all the things. Have fun with merge conflicts. 2016-06-24 10:43:46 +02:00
main.cpp ShaderGenCommon: Remove unnecessary includes 2017-02-01 12:19:55 -05:00