<html>
<head>
<base href="https://bugs.llvm.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - Build failures when building on Windows 10 w/ MSVC 2019"
href="https://bugs.llvm.org/show_bug.cgi?id=47598">47598</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>Build failures when building on Windows 10 w/ MSVC 2019
</td>
</tr>
<tr>
<th>Product</th>
<td>new-bugs
</td>
</tr>
<tr>
<th>Version</th>
<td>10.0
</td>
</tr>
<tr>
<th>Hardware</th>
<td>PC
</td>
</tr>
<tr>
<th>OS</th>
<td>Windows NT
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>P
</td>
</tr>
<tr>
<th>Component</th>
<td>new bugs
</td>
</tr>
<tr>
<th>Assignee</th>
<td>unassignedbugs@nondot.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>zelexi@gmail.com
</td>
</tr>
<tr>
<th>CC</th>
<td>htmldeveloper@gmail.com, llvm-bugs@lists.llvm.org
</td>
</tr></table>
<p>
<div>
<pre>There's a bunch of issues when trying to build LLVM from scratch on Win 10 w/
MSVC 2019 (or 2017 for that matter). These issues are blocking for me.
First there was an issue with llvm::is_trivially_copyable not being compatible
with std::is_trivially_copyable causing build failure
/// SmallVectorTemplateBase<TriviallyCopyable = false> - This is where we put
method
/// implementations that are designed to work with non-POD-like T's.
-template <typename T, bool = is_trivially_copyable<T>::value>
+template <typename T, bool = std::is_trivially_copyable<T>::value>
class SmallVectorTemplateBase : public SmallVectorTemplateCommon<T> {
protected:
SmallVectorTemplateBase(size_t Size) : SmallVectorTemplateCommon<T>(Size) {}
After fixing by using std:: then there is
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\llvm\include\llvm/ADT/SmallVector.h(222,34):
error C2280: 'clang::OpaqueValueExpr::OpaqueValueExpr(const
clang::OpaqueValueExpr &)': attempting to reference a deleted function
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\clang\include\clang/AST/Expr.h(1146):
message : compiler has generated 'clang::OpaqueValueExpr::OpaqueValueExpr' here
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\clang\include\clang/AST/Expr.h(1146,1):
message : 'clang::OpaqueValueExpr::OpaqueValueExpr(const clang::OpaqueValueExpr
&)': function was implicitly deleted because a base class invokes a deleted or
inaccessible function 'clang::Expr::Expr(const clang::Expr &)'
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\clang\include\clang/AST/Expr.h(113,3):
message : 'clang::Expr::Expr(const clang::Expr &)': function was explicitly
deleted
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\llvm\include\llvm/ADT/SmallVector.h(219):
message : while compiling class template member function 'void
llvm::SmallVectorTemplateBase<T,false>::push_back(T &&)'
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
with
[
T=clang::OpaqueValueExpr
]
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\clang\lib\Sema\SemaExprCXX.cpp(4987):
message : see reference to function template instantiation 'void
llvm::SmallVectorTemplateBase<T,false>::push_back(T &&)' being compiled
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
with
[
T=clang::OpaqueValueExpr
]
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\llvm\include\llvm/ADT/SmallVector.h(316):
message : see reference to class template instantiation
'llvm::SmallVectorTemplateBase<T,false>' being compiled
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
with
[
T=clang::OpaqueValueExpr
]
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\llvm\include\llvm/ADT/SmallVector.h(838):
message : see reference to class template instantiation
'llvm::SmallVectorImpl<T>' being compiled
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
with
[
T=clang::OpaqueValueExpr
]
X:\radgit\rad\jono\scripts\llvm-build\llvm-project\clang\lib\Sema\SemaExprCXX.cpp(4980):
message : see reference to class template instantiation
'llvm::SmallVector<clang::OpaqueValueExpr,2>' being compiled
[X:\radgit\rad\jono\scripts\llvm-build\llvm-project\build\tools\clang\lib\Sema\obj.clangSema.vcxproj]
How are you guys building 10.0.1 over there? Looks like you guys need some kind
of prereq system config information or something.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are on the CC list for the bug.</li>
</ul>
</body>
</html>