Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1614)

Unified Diff: runtime/vm/object.cc

Issue 99373002: Mark native functions when they are created. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/object.h ('k') | runtime/vm/object_test.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/object.cc
===================================================================
--- runtime/vm/object.cc (revision 30796)
+++ runtime/vm/object.cc (working copy)
@@ -2129,6 +2129,7 @@
false, // Not const.
false, // Not abstract.
false, // Not external.
+ false, // Not native.
*this,
0)); // No token position.
ArgumentsDescriptor desc(args_desc);
@@ -2337,6 +2338,7 @@
false, // Not const.
false, // Not abstract.
false, // Not external.
+ false, // Not native.
temp_class,
0));
eval_func.set_result_type(Type::Handle(Type::DynamicType()));
@@ -5042,6 +5044,7 @@
bool is_const,
bool is_abstract,
bool is_external,
+ bool is_native,
const Object& owner,
intptr_t token_pos) {
ASSERT(!owner.IsNull());
@@ -5054,6 +5057,7 @@
result.set_is_const(is_const);
result.set_is_abstract(is_abstract);
result.set_is_external(is_external);
+ result.set_is_native(is_native);
result.set_is_visible(true); // Will be computed later.
result.set_is_intrinsic(false);
result.set_is_recognized(false);
@@ -5069,7 +5073,6 @@
result.set_optimized_call_site_count(0);
result.set_is_optimizable(true);
result.set_has_finally(false);
- result.set_is_native(false);
result.set_is_inlinable(true);
if (kind == RawFunction::kClosureFunction) {
const ClosureData& data = ClosureData::Handle(ClosureData::New());
@@ -5111,6 +5114,7 @@
/* is_const = */ false,
/* is_abstract = */ false,
/* is_external = */ false,
+ parent.is_native(),
parent_owner,
token_pos));
result.set_parent_function(parent);
@@ -5497,6 +5501,7 @@
false, // !const
false, // !abstract
false, // !external
+ false, // !native
Class::Handle(field.owner()),
field.token_pos()));
init_function.set_result_type(AbstractType::Handle(field.type()));
@@ -11040,6 +11045,7 @@
false, // Not const.
false, // Not abstract.
false, // Not external.
+ false, // Not native.
temp_class,
0));
eval_func.set_result_type(Type::Handle(Type::DynamicType()));
« no previous file with comments | « runtime/vm/object.h ('k') | runtime/vm/object_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698