New issue
Advanced search Search tips

Issue 598944 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Apr 2016
Components:
EstimatedDays: ----
NextAction: ----
OS: Windows
Pri: 1
Type: Bug



Sign in to add a comment

ANGLE BufferImpl.h fails to compile on win clang

Project Member Reported by jbau...@chromium.org, Mar 30 2016

Issue description

Caused by https://chromium-review.googlesource.com/334731

See https://build.chromium.org/p/chromium.gpu.fyi/builders/GPU%20Win%20Clang%20Builder%20%28dbg%29/builds/2090 :
FAILED: ninja -t msvc -e environment.x86 -- E:\b\build\goma/gomacc "..\..\third_party/llvm-build/Release+Asserts/bin/clang-cl" -m32 /nologo /showIncludes /FC @obj\third_party\angle\src\libANGLE\renderer\d3d\d3d11\libANGLE.Buffer11.obj.rsp /c ..\..\third_party\angle\src\libANGLE\renderer\d3d\d3d11\Buffer11.cpp /Foobj\third_party\angle\src\libANGLE\renderer\d3d\d3d11\libANGLE.Buffer11.obj /Fdobj\third_party\angle\src\libANGLE.cc.pdb 
In file included from ..\..\third_party\angle\src\libANGLE\renderer\d3d\d3d11\Buffer11.cpp:9:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/d3d/d3d11/Buffer11.h:15:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/d3d/BufferD3D.h:13:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/BufferImpl.h:14:
..\..\third_party\angle\src\libANGLE/Error.h(60,40):  error: no matching function for call to 'forward'
        : mError(GL_NO_ERROR), mResult(std::forward<T>(result))
                                       ^~~~~~~~~~~~~~~
..\..\third_party\angle\src\libANGLE\renderer\d3d\d3d11\Buffer11.cpp(603,16):  note: in instantiation of function template specialization 'gl::ErrorOrResult<ID3D11Buffer *>::ErrorOrResult<gl::Error &>' requested here
        return error;
               ^
E:\b\depot_tools\win_toolchain\vs_files\a3796183a9fc4d22a687c5212b9c76dbd136d70d\win_sdk\bin\..\..\VC\include\type_traits(1231,19):  note: candidate function [with _Ty = ID3D11Buffer *] not viable: no known conversion from 'gl::Error' to 'typename remove_reference<ID3D11Buffer *>::type &' (aka 'ID3D11Buffer *&') for 1st argument
        _CONST_FUN _Ty&& forward(
                         ^
E:\b\depot_tools\win_toolchain\vs_files\a3796183a9fc4d22a687c5212b9c76dbd136d70d\win_sdk\bin\..\..\VC\include\type_traits(1238,19):  note: candidate function [with _Ty = ID3D11Buffer *] not viable: no known conversion from 'gl::Error' to 'typename remove_reference<ID3D11Buffer *>::type' (aka 'ID3D11Buffer *') for 1st argument
        _CONST_FUN _Ty&& forward(
                         ^
In file included from ..\..\third_party\angle\src\libANGLE\renderer\d3d\d3d11\Buffer11.cpp:9:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/d3d/d3d11/Buffer11.h:15:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/d3d/BufferD3D.h:13:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/BufferImpl.h:14:
..\..\third_party\angle\src\libANGLE/Error.h(60,40):  error: no matching function for call to 'forward'
        : mError(GL_NO_ERROR), mResult(std::forward<T>(result))
                                       ^~~~~~~~~~~~~~~
..\..\third_party\angle\src\libANGLE\renderer\d3d\d3d11\Buffer11.cpp(795,20):  note: in instantiation of function template specialization 'gl::ErrorOrResult<rx::Buffer11::BufferStorage *>::ErrorOrResult<gl::Error &>' requested here
            return error;
                   ^
E:\b\depot_tools\win_toolchain\vs_files\a3796183a9fc4d22a687c5212b9c76dbd136d70d\win_sdk\bin\..\..\VC\include\type_traits(1231,19):  note: candidate function [with _Ty = rx::Buffer11::BufferStorage *] not viable: no known conversion from 'gl::Error' to 'typename remove_reference<BufferStorage *>::type &' (aka 'rx::Buffer11::BufferStorage *&') for 1st argument
        _CONST_FUN _Ty&& forward(
                         ^
E:\b\depot_tools\win_toolchain\vs_files\a3796183a9fc4d22a687c5212b9c76dbd136d70d\win_sdk\bin\..\..\VC\include\type_traits(1238,19):  note: candidate function [with _Ty = rx::Buffer11::BufferStorage *] not viable: no known conversion from 'gl::Error' to 'typename remove_reference<BufferStorage *>::type' (aka 'rx::Buffer11::BufferStorage *') for 1st argument
        _CONST_FUN _Ty&& forward(
                         ^
In file included from ..\..\third_party\angle\src\libANGLE\renderer\d3d\d3d11\Buffer11.cpp:9:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/d3d/d3d11/Buffer11.h:15:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/d3d/BufferD3D.h:13:
In file included from ..\..\third_party\angle\src\libANGLE/renderer/BufferImpl.h:14:
..\..\third_party\angle\src\libANGLE/Error.h(60,40):  error: no matching function for call to 'forward'
        : mError(GL_NO_ERROR), mResult(std::forward<T>(result))
                                       ^~~~~~~~~~~~~~~
..\..\third_party\angle\src\libANGLE\renderer\d3d\d3d11\Buffer11.cpp(1048,20):  note: in instantiation of function template specialization 'gl::ErrorOrResult<rx::(anonymous namespace)::CopyResult>::ErrorOrResult<gl::Error &>' requested here
            return error;
                   ^
E:\b\depot_tools\win_toolchain\vs_files\a3796183a9fc4d22a687c5212b9c76dbd136d70d\win_sdk\bin\..\..\VC\include\type_traits(1231,19):  note: candidate function [with _Ty = rx::(anonymous namespace)::CopyResult] not viable: no known conversion from 'gl::Error' to 'typename remove_reference<CopyResult>::type &' (aka 'rx::(anonymous namespace)::CopyResult &') for 1st argument
        _CONST_FUN _Ty&& forward(
                         ^
E:\b\depot_tools\win_toolchain\vs_files\a3796183a9fc4d22a687c5212b9c76dbd136d70d\win_sdk\bin\..\..\VC\include\type_traits(1238,19):  note: candidate function [with _Ty = rx::(anonymous namespace)::CopyResult] not viable: no known conversion from 'gl::Error' to 'typename remove_reference<CopyResult>::type' (aka 'rx::(anonymous namespace)::CopyResult') for 1st argument
        _CONST_FUN _Ty&& forward(
                         ^
3 errors generated.
 
Project Member

Comment 1 by bugdroid1@chromium.org, Mar 30 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/angle/angle/+/e34deaa3bec55d3e9ef92e74435d3eb12b770b02

commit e34deaa3bec55d3e9ef92e74435d3eb12b770b02
Author: Jamie Madill <jmadill@chromium.org>
Date: Wed Mar 30 01:50:40 2016

Revert "Clean up Buffer11."

Fails Clang-win because of std::forward

..\..\third_party\angle\src\libANGLE/Error.h(60,40):  error: no matching function for call to 'forward'

BUG= 598944 
BUG= angleproject:1327 
BUG= angleproject:1310 

This reverts commit 041d678b4764484386f934df927f00a5df48a351.

Change-Id: I9fb0685cd01090b1faf8417ffa3c9b49eeb4510e
Reviewed-on: https://chromium-review.googlesource.com/336040
Reviewed-by: Jamie Madill <jmadill@chromium.org>

[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/tests/perf_tests/IndexDataManagerTest.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/InputLayoutCache.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/RendererD3D.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d9/Renderer9.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d9/Buffer9.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/RendererD3D.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/PixelTransfer11.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/Renderer11.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d9/Buffer9.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/Buffer11.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/VertexBuffer.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/Error.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d9/Renderer9.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/tests/gl_tests/D3D11EmulatedIndexedBufferTest.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/BufferD3D.h

Project Member

Comment 2 by bugdroid1@chromium.org, Mar 30 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/angle/angle/+/e34deaa3bec55d3e9ef92e74435d3eb12b770b02

commit e34deaa3bec55d3e9ef92e74435d3eb12b770b02
Author: Jamie Madill <jmadill@chromium.org>
Date: Wed Mar 30 01:50:40 2016

Revert "Clean up Buffer11."

Fails Clang-win because of std::forward

..\..\third_party\angle\src\libANGLE/Error.h(60,40):  error: no matching function for call to 'forward'

BUG= 598944 
BUG= angleproject:1327 
BUG= angleproject:1310 

This reverts commit 041d678b4764484386f934df927f00a5df48a351.

Change-Id: I9fb0685cd01090b1faf8417ffa3c9b49eeb4510e
Reviewed-on: https://chromium-review.googlesource.com/336040
Reviewed-by: Jamie Madill <jmadill@chromium.org>

[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/tests/perf_tests/IndexDataManagerTest.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/InputLayoutCache.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/RendererD3D.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d9/Renderer9.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d9/Buffer9.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/RendererD3D.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/PixelTransfer11.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/Renderer11.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d9/Buffer9.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/Buffer11.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/VertexBuffer.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/Error.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/d3d9/Renderer9.h
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/tests/gl_tests/D3D11EmulatedIndexedBufferTest.cpp
[modify] https://crrev.com/e34deaa3bec55d3e9ef92e74435d3eb12b770b02/src/libANGLE/renderer/d3d/BufferD3D.h

Project Member

Comment 3 by bugdroid1@chromium.org, Apr 2 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6a5b73fc8615892260d6f47242d1d6a642e3dcfc

commit 6a5b73fc8615892260d6f47242d1d6a642e3dcfc
Author: jmadill <jmadill@chromium.org>
Date: Sat Apr 02 01:36:02 2016

Roll ANGLE 00f394e..0c0d800

https://chromium.googlesource.com/angle/angle.git/+log/00f394e..0c0d800

BUG=593448, 598944 , 595836 ,590870
TBR=geofflang@chromium.org
TEST=bots

CQ_INCLUDE_TRYBOTS=tryserver.chromium.win:win_optional_gpu_tests_rel;tryserver.chromium.mac:mac_optional_gpu_tests_rel;tryserver.chromium.linux:linux_optional_gpu_tests_rel

Review URL: https://codereview.chromium.org/1849013003

Cr-Commit-Position: refs/heads/master@{#384777}

[modify] https://crrev.com/6a5b73fc8615892260d6f47242d1d6a642e3dcfc/DEPS

Status: Fixed (was: Assigned)

Sign in to add a comment