mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-01 00:33:09 +00:00
Improve error messages on assertion failure.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@821 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
f84b9bc33b
commit
2a72820b43
@ -188,7 +188,10 @@ template <class X> class real_type <class UseTy<X> > { typedef X *Type; };
|
||||
// if (isa<Type>(myVal)) { ... }
|
||||
//
|
||||
template <class X, class Y>
|
||||
inline bool isa(Y Val) { return X::classof(Val); }
|
||||
inline bool isa(Y Val) {
|
||||
assert(Val && "isa<Ty>(NULL) invoked!");
|
||||
return X::classof(Val);
|
||||
}
|
||||
|
||||
|
||||
// cast<X> - Return the argument parameter cast to the specified type. This
|
||||
@ -201,7 +204,8 @@ inline bool isa(Y Val) { return X::classof(Val); }
|
||||
//
|
||||
template <class X, class Y>
|
||||
inline X *cast(Y Val) {
|
||||
assert((Val == 0 || isa<X>(Val)) && "Invalid cast argument type!");
|
||||
assert((Val == 0 || isa<X>(Val)) &&
|
||||
"cast<Ty>() argument of uncompatible type!");
|
||||
return (X*)(real_type<Y>::Type)Val;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user