| Index: src/messages.js
|
| diff --git a/src/messages.js b/src/messages.js
|
| index 5900ed18e2a24cc3ecbf91f943de22f7bd1ba6ba..9c8c075e9ee503a8217ddfe453d6c31c82343754 100644
|
| --- a/src/messages.js
|
| +++ b/src/messages.js
|
| @@ -39,7 +39,6 @@ var kMessages = {
|
| stack_trace: ["Stack Trace:\n", "%0"],
|
| called_non_callable: ["%0", " is not a function"],
|
| undefined_method: ["Object ", "%1", " has no method '", "%0", "'"],
|
| - property_not_function: ["Property '", "%0", "' of object ", "%1", " is not a function"],
|
| cannot_convert_to_primitive: ["Cannot convert object to primitive value"],
|
| not_constructor: ["%0", " is not a constructor"],
|
| not_defined: ["%0", " is not defined"],
|
| @@ -47,7 +46,6 @@ var kMessages = {
|
| unsupported_super: ["Unsupported reference to 'super'"],
|
| non_object_property_load: ["Cannot read property '", "%0", "' of ", "%1"],
|
| non_object_property_store: ["Cannot set property '", "%0", "' of ", "%1"],
|
| - with_expression: ["%0", " has no properties"],
|
| illegal_invocation: ["Illegal invocation"],
|
| no_setter_in_callback: ["Cannot set property ", "%0", " of ", "%1", " which has only a getter"],
|
| apply_non_function: ["Function.prototype.apply was called on ", "%0", ", which is a ", "%1", " and not a function"],
|
| @@ -325,6 +323,11 @@ function MakeGenericError(constructor, type, args) {
|
| }
|
|
|
|
|
| +function MakeGenericError2(constructor, type, arg0, arg1, arg2) {
|
| + return new constructor(FormatMessage(type, arg0, arg1, arg2));
|
| +}
|
| +
|
| +
|
| /**
|
| * Set up the Script function and constructor.
|
| */
|
| @@ -338,10 +341,21 @@ function MakeGenericError(constructor, type, args) {
|
|
|
|
|
| // Helper functions; called from the runtime system.
|
| -function FormatMessage(type, args) {
|
| +function FormatMessage(type, arg0, arg1, arg2) {
|
| + if (IS_NUMBER(type)) {
|
| + var arg0 = NoSideEffectToString(arg0);
|
| + var arg1 = NoSideEffectToString(arg1);
|
| + var arg2 = NoSideEffectToString(arg2);
|
| + try {
|
| + return %FormatMessageString(type, arg0, arg1, arg2);
|
| + } catch (e) {
|
| + return "";
|
| + }
|
| + }
|
| + // TODO(yangguo): remove this code path once we migrated all messages.
|
| var format = kMessages[type];
|
| if (!format) return "<unknown message " + type + ">";
|
| - return FormatString(format, args);
|
| + return FormatString(format, arg0);
|
| }
|
|
|
|
|
| @@ -371,6 +385,12 @@ function MakeTypeError(type, args) {
|
| }
|
|
|
|
|
| +// TODO(yangguo): rename this once we migrated all messages.
|
| +function MakeTypeError2(type, arg0, arg1, arg2) {
|
| + return MakeGenericError2($TypeError, type, arg0, arg1, arg2);
|
| +}
|
| +
|
| +
|
| function MakeRangeError(type, args) {
|
| return MakeGenericError($RangeError, type, args);
|
| }
|
|
|