diff options
Diffstat (limited to 'src/check_expr.cpp')
| -rw-r--r-- | src/check_expr.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/check_expr.cpp b/src/check_expr.cpp index 707baaaf7..4c52ca400 100644 --- a/src/check_expr.cpp +++ b/src/check_expr.cpp @@ -767,7 +767,9 @@ bool is_polymorphic_type_assignable(Checker *c, Type *poly, Type *source, bool c if (check_type_specialization_to(c, poly, source, compound, modify_type)) { return true; } - if (compound) return are_types_identical(poly, source); + if (compound || !is_type_generic(poly)) { + return are_types_identical(poly, source); + } return check_is_assignable_to(c, &o, poly); } |