http://llvm.org/bugs/show_bug.cgi?id=10860
Summary: "Trying to aggregate-copy a type without a trivial
copy " "constructor or assignment operator"' failed
Product: clang
Version: unspecified
Platform: PC
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P
Component: C++0x
AssignedTo: [email protected]
ReportedBy: [email protected]
CC: [email protected], [email protected]
clang -cc1 -S -std=gnu++0x
crashes on
struct ElfValue {
};
class ElfLocation: public ElfValue {
virtual unsigned int getValue();
};
template<typename> struct remove_reference;
template<typename _Tp> struct remove_reference<_Tp&> {
typedef _Tp type;
};
template<typename _Tp> typename remove_reference<_Tp>::type&& move(_Tp&&
__t) {
return static_cast<typename remove_reference<_Tp>::type&&>(__t);
}
ElfLocation* __old_finish;
void foo() {
*__old_finish = move(*--__old_finish);
}
With
clang: /home/espindola/llvm/llvm/tools/clang/lib/CodeGen/CGExprAgg.cpp:1074:
void clang::CodeGen::CodeGenFunction::EmitAggregateCopy(llvm::Value *,
llvm::Value *, clang::QualType, bool): Assertion
`(Record->hasTrivialCopyConstructor() || Record->hasTrivialCopyAssignment()) &&
"Trying to aggregate-copy a type without a trivial copy " "constructor or
assignment operator"' failed.
--
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.
_______________________________________________
LLVMbugs mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/llvmbugs