diff options
| author | Yong He <yonghe@outlook.com> | 2020-06-05 13:01:06 -0700 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-05 13:01:06 -0700 |
| commit | 92fc3aaa835315ff08750c7b5a7498b7228e2c33 (patch) | |
| tree | 162b2b4b9411ede11d6a53015713ab431283f6c6 /source/slang/slang-check-conversion.cpp | |
| parent | 389be08822ba554327b5948266f54acf8a312fe7 (diff) | |
| parent | e3e1cf2045f14837cfecb14e252c0e1083787b93 (diff) | |
Merge branch 'master' into findtypebynamefix
Diffstat (limited to 'source/slang/slang-check-conversion.cpp')
| -rw-r--r-- | source/slang/slang-check-conversion.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/source/slang/slang-check-conversion.cpp b/source/slang/slang-check-conversion.cpp index 1f34e240d..c4e809025 100644 --- a/source/slang/slang-check-conversion.cpp +++ b/source/slang/slang-check-conversion.cpp @@ -544,12 +544,12 @@ namespace Slang if (auto toDeclRefType = as<DeclRefType>(toType)) { auto toTypeDeclRef = toDeclRefType->declRef; - if (auto interfaceDeclRef = toTypeDeclRef.as<InterfaceDecl>()) + if (auto toAggTypeDeclRef = toTypeDeclRef.as<AggTypeDecl>()) { - if(auto witness = tryGetInterfaceConformanceWitness(fromType, interfaceDeclRef)) + if(auto witness = tryGetSubtypeWitness(fromType, toAggTypeDeclRef)) { if (outToExpr) - *outToExpr = createCastToInterfaceExpr(toType, fromExpr, witness); + *outToExpr = createCastToSuperTypeExpr(toType, fromExpr, witness); if (outCost) *outCost = kConversionCost_CastToInterface; return true; @@ -835,12 +835,12 @@ namespace Slang return castExpr; } - RefPtr<Expr> SemanticsVisitor::createCastToInterfaceExpr( + RefPtr<Expr> SemanticsVisitor::createCastToSuperTypeExpr( RefPtr<Type> toType, RefPtr<Expr> fromExpr, RefPtr<Val> witness) { - RefPtr<CastToInterfaceExpr> expr = m_astBuilder->create<CastToInterfaceExpr>(); + RefPtr<CastToSuperTypeExpr> expr = m_astBuilder->create<CastToSuperTypeExpr>(); expr->loc = fromExpr->loc; expr->type = QualType(toType); expr->valueArg = fromExpr; |
