ir/opcodes: Implement IR::AreTypesCompatible

Type-checking is now occuring in more than one place.
This commit is contained in:
MerryMage 2016-08-19 01:34:14 +01:00
parent 9782e7da3f
commit 192a0029be
5 changed files with 10 additions and 3 deletions

View file

@ -77,7 +77,7 @@ std::string DumpBlock(const IR::Block& block) {
Type actual_type = arg.GetType();
Type expected_type = GetArgTypeOf(op, arg_index);
if (actual_type != expected_type && actual_type != Type::Opaque && expected_type != Type::Opaque) {
if (!AreTypesCompatible(actual_type, expected_type)) {
ret += Common::StringFromFormat("<type error: %s != %s>", GetNameOf(actual_type), GetNameOf(expected_type));
}
}