Clang - 删除“转换函数转换<a> to base class <b> will never be used&#34; warnings for certain files</b></a>

时间:2012-07-16 17:48:07

标签: c++ winapi directx clang

对DirectX的包含文件进行扼流,并在分析标题时吐出一些警告:

C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:1133,5 - Warning - conversion function converting 'CD3D11_RECT' to its base class 'tagRECT' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:1179,5 - Warning - conversion function converting 'CD3D11_BOX' to its base class 'D3D11_BOX' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:1441,5 - Warning - conversion function converting 'CD3D11_DEPTH_STENCIL_DESC' to its base class 'D3D11_DEPTH_STENCIL_DESC' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:1661,5 - Warning - conversion function converting 'CD3D11_BLEND_DESC' to its base class 'D3D11_BLEND_DESC' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:1857,5 - Warning - conversion function converting 'CD3D11_RASTERIZER_DESC' to its base class 'D3D11_RASTERIZER_DESC' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:2200,5 - Warning - conversion function converting 'CD3D11_BUFFER_DESC' to its base class 'D3D11_BUFFER_DESC' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:2400,5 - Warning - conversion function converting 'CD3D11_TEXTURE1D_DESC' to its base class 'D3D11_TEXTURE1D_DESC' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:2608,5 - Warning - conversion function converting 'CD3D11_TEXTURE2D_DESC' to its base class 'D3D11_TEXTURE2D_DESC' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:2811,5 - Warning - conversion function converting 'CD3D11_TEXTURE3D_DESC' to its base class 'D3D11_TEXTURE3D_DESC' will never be used
C:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include\D3D11.h:3419,5 - Warning - conversion function converting 'CD3D11_SHADER_RESOURCE_VIEW_DESC' to its base class 'D3D11_SHADER_RESOURCE_VIEW_DESC' will never be used

当然,这使得通过所有这些找到错误和警告让我感兴趣非常烦人。是否有一个标志会使它不输出这些消息,或者至少是一种不分析DirectX头文件的方法?

我目前正在使用

进行编译
-Wall -Wno-unknown-pragmas -Wno-microsoft -Wno-return-type-c-linkage -Wno-conversions -IC:/Program Files (x86)/Microsoft DirectX SDK (June 2010)/Include -IC:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/include

1 个答案:

答案 0 :(得分:3)

所以,对于那些可能也有这个“问题”的人来说:

请勿使用-I<path>,请使用-isystem<path>