Index: runtime/vm/object.cc |
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc |
index 8282ed526b96608aaf603eaf34d873308727050b..cf1a50eb4b128dc5793840e04eefa03f62ad7390 100644 |
--- a/runtime/vm/object.cc |
+++ b/runtime/vm/object.cc |
@@ -7175,11 +7175,16 @@ RawString* Function::QualifiedName(NameVisibility name_visibility) const { |
} |
const Class& cls = Class::Handle(Owner()); |
if (!cls.IsTopLevel()) { |
- result = String::Concat(Symbols::Dot(), result, Heap::kOld); |
- const String& cls_name = String::Handle(name_visibility == kScrubbedName |
- ? cls.ScrubbedName() |
- : cls.UserVisibleName()); |
- result = String::Concat(cls_name, result, Heap::kOld); |
+ if (fun.kind() == RawFunction::kConstructor) { |
+ result = String::Concat(Symbols::ConstructorStacktracePrefix(), result, |
+ Heap::kOld); |
+ } else { |
+ result = String::Concat(Symbols::Dot(), result, Heap::kOld); |
+ const String& cls_name = String::Handle(name_visibility == kScrubbedName |
+ ? cls.ScrubbedName() |
+ : cls.UserVisibleName()); |
+ result = String::Concat(cls_name, result, Heap::kOld); |
+ } |
} |
return result.raw(); |
} |