| Index: runtime/vm/object.cc
|
| diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
|
| index 6ec65ee6f014e2aa268816f2b1c90f605e21b7d9..0ba720942857cf500630f1d7661fbd2c2181436d 100644
|
| --- a/runtime/vm/object.cc
|
| +++ b/runtime/vm/object.cc
|
| @@ -16390,14 +16390,14 @@ void Type::set_error(const LanguageError& value) const {
|
|
|
|
|
| RawFunction* Type::signature() const {
|
| - if (raw_ptr()->sig_or_err_.signature_ == Function::null()) {
|
| + intptr_t cid = raw_ptr()->sig_or_err_.signature_->GetClassId();
|
| + if (cid == kNullCid) {
|
| return Function::null();
|
| }
|
| - const Object& obj = Object::Handle(raw_ptr()->sig_or_err_.signature_);
|
| - if (obj.IsFunction()) {
|
| - return Function::RawCast(obj.raw());
|
| + if (cid == kFunctionCid) {
|
| + return Function::RawCast(raw_ptr()->sig_or_err_.signature_);
|
| }
|
| - ASSERT(obj.IsLanguageError()); // Type is malformed or malbounded.
|
| + ASSERT(cid == kLanguageErrorCid); // Type is malformed or malbounded.
|
| return Function::null();
|
| }
|
|
|
|
|