Fix poor dyn_cast usage (#2763)

Note the dest_class case didn't actually check dyn_cast success until after using the pointer. That's the case I noticed first, but also cleaning up a couple other small related things.
This commit is contained in:
Jon Ross-Perkins
2023-04-12 15:56:27 -07:00
committed by GitHub
parent 9245e17d4c
commit 694dd7bf55
3 changed files with 8 additions and 13 deletions
+2 -2
View File
@@ -22,7 +22,7 @@ auto NamedElement::name() const -> std::string_view {
if (const auto* decl = element_.dyn_cast<const Declaration*>()) {
return GetName(*decl).value();
} else {
const auto* named_value = element_.dyn_cast<const NamedValue*>();
const auto* named_value = element_.get<const NamedValue*>();
return named_value->name;
}
}
@@ -31,7 +31,7 @@ auto NamedElement::type() const -> const Value& {
if (const auto* decl = element_.dyn_cast<const Declaration*>()) {
return decl->static_type();
} else {
const auto* named_value = element_.dyn_cast<const NamedValue*>();
const auto* named_value = element_.get<const NamedValue*>();
return *named_value->value;
}
}