Index: runtime/vm/flow_graph.cc |
=================================================================== |
--- runtime/vm/flow_graph.cc (revision 30304) |
+++ runtime/vm/flow_graph.cc (working copy) |
@@ -1067,13 +1067,16 @@ |
void FlowGraph::Bailout(const char* reason) const { |
- const char* kFormat = "FlowGraph Bailout: %s %s"; |
- const char* function_name = parsed_function_.function().ToCString(); |
- intptr_t len = OS::SNPrint(NULL, 0, kFormat, function_name, reason) + 1; |
- char* chars = Isolate::Current()->current_zone()->Alloc<char>(len); |
- OS::SNPrint(chars, len, kFormat, function_name, reason); |
+ const Function& function = parsed_function_.function(); |
const Error& error = Error::Handle( |
- LanguageError::New(String::Handle(String::New(chars)))); |
+ LanguageError::NewFormatted(Error::Handle(), // No previous error. |
+ Script::Handle(function.script()), |
+ function.token_pos(), |
+ LanguageError::kError, |
+ Heap::kNew, |
+ "FlowGraph Bailout: %s %s", |
+ String::Handle(function.name()).ToCString(), |
+ reason)); |
Isolate::Current()->long_jump_base()->Jump(1, error); |
} |