Граф коммитов

5612 Коммитов

Автор SHA1 Сообщение Дата
pschwartau%netscape.com ada7af9670 Updating email address. 2004-01-31 01:04:51 +00:00
brendan%mozilla.org a4c8ed8073 More bug 231518 followup: non-identifier as well as reserved-id property names must be quoted/indexed, not dotted (r=shaver). 2004-01-30 20:34:23 +00:00
igor%mir2.org 2c61e81ef1 Fixing bug 210605 again: for now re-throw Error instances as is without wrapping them into WrappedException so scripts would not be able to catch them. 2004-01-29 17:04:31 +00:00
pschwartau%netscape.com 0b1928388d Updating JS_GetImplementationVersion() to date of latest JS release (67111). 2004-01-28 02:10:31 +00:00
brendan%mozilla.org 33034c57d6 Brace style fascism. 2004-01-24 00:36:10 +00:00
brendan%mozilla.org 55630ce326 Fix quoting/escaping of non-ASCII chars and reserved ids in all property access cases (231518, r=shaver). 2004-01-23 17:52:03 +00:00
dbaron%dbaron.org 28185204c6 Print more information about nsXPCWrappedJS objects in GC_MARK_DEBUG. b=231384 r=brendan sr=bryner 2004-01-21 21:09:18 +00:00
igor%mir2.org a8722e4591 Removal support for deprecated getTargetClassFileName/setTargetClassFileName: they throw exception instead of calling a special proxy to avoid having probably unused any more class. If this is not true, then the methods should be restored. 2004-01-18 21:26:34 +00:00
igor%mir2.org 14b2b0415b Fixing JavaDoc comments 2004-01-18 21:23:53 +00:00
igor%mir2.org e9111c411d EvaluatorException and WrappedException are public API now 2004-01-18 21:21:41 +00:00
brendan%mozilla.org a522d30c20 Fix bug reported by Adrian Klein <master@dragosan.net> where o['if'] is decompiled as o.if. 2004-01-18 18:31:34 +00:00
igor%mir2.org 197d8abe67 Deprecating ClassNameHelper and ClassRepository in favor of new optimizer/ClassCompiler. 2004-01-17 21:52:30 +00:00
igor%mir2.org 9ab50b8455 optimizer.ClassCompiler provides new simple API for generating of class files from scripts that does not require to create Context instances.
The jsc tool is updated to use the new interface instead of using ClassNamehelper and friends.
2004-01-17 21:02:32 +00:00
igor%mir2.org 3077885e6a 1. optimizer/Codegen now just generates byte code classes, the instantiation of classes is done in a separated class optimizer/ClassCompiler. This is done to provide in future a simple interface to generate class files instead of complicated ClassNameHelper and friends implementation.
2. Parser now stores TokenStream instance in its field instead of having it present in each and every method signature. It allowed to simplify interaction between Parser and IRFactory where the later now uses Parser.reportError so parser van recover from syntax errors and provide better error reporting.
2004-01-16 18:20:22 +00:00
igor%mir2.org 81a158c7f7 Added setters for properties of CompilerEnvirons.java so it can be initialized
without having Context object.
2004-01-16 16:09:07 +00:00
igor%mir2.org 621907e4db Renaming Context.hrowAsUncheckedException to Context.throwAsScriptRuntimeEx to better reflect its purpose, providing better documentation and making sure it throws only instances of EcmaError and EvaluatorException. 2004-01-16 15:14:25 +00:00
igor%mir2.org 4449f64a14 Fixing bug 228336 :
This is a Rhino version of Brandan's patch from attachment 138844, bug 228087
plus code to fix overflow problem reported in bug 230216.
2004-01-16 15:11:31 +00:00
igor%mir2.org 8c221d45d5 throwAsUncheckedException is moved from ScriptRuntime to Context as a useful API to use in external applications. 2004-01-15 20:41:57 +00:00
igor%mir2.org f1a0d67e37 Fixing typo in comments 2004-01-15 20:40:56 +00:00
igor%mir2.org b6b301b603 Patch from Alex Bitney to fix bug 230883 2004-01-15 20:10:54 +00:00
brendan%mozilla.org cd83246f90 Unify license comment per js/src/plify_jsdhash.sed, plus comment simplification. 2004-01-15 02:00:55 +00:00
brendan%mozilla.org 77f1b56db2 Anything that starts like a {min,max} quantifier but doesn't parse as one is taken as a flat string to match (228087, r=shaver). 2004-01-12 21:10:26 +00:00
timeless%mozdev.org 506e4848b0 Bug 230522 warning C4047: 'return' : 'foo *' differs in levels of in direction from 'int'
rs=brendan
2004-01-11 17:26:30 +00:00
timeless%mozdev.org 50e3161311 Adding support for WinXP (copied from Win2k) 2004-01-09 20:15:27 +00:00
bsmedberg%covad.net 1f4ab81acd Continuing to land the PACKAGING_20030906_BRANCH for bug 20640. Not part of the build, yet. 2004-01-07 13:37:00 +00:00
bsmedberg%covad.net f0bfff2628 Beginning to land the PACKAGING_20030906_BRANCH for bug 20640. Not part of the build, yet. 2004-01-07 01:22:31 +00:00
igor%mir2.org 5422230263 Fixing bug 229571 : code refactoring for speed optimization 2004-01-06 13:35:51 +00:00
igor%mir2.org dfe5836b42 Move details of parsing/code generation from Context to interpreter/optimizer to allow more pluggable compilation interface. 2004-01-05 13:22:40 +00:00
brendan%mozilla.org a3ab882200 - Eliminate WellTerminated by coalescing its call sites to the end of Statement and inlining it there. This adds a tiny bit of overhead in some cases, due to
the ON_CURRENT_LINE check, which can be proven redundant for cases such as the
debugger statement.  But the cost should be in the noise, and code size wins.

- Remove bogus lastExprType argument to WellTerminated and eliminate its only
use, in parsing an expression statement.  Also eliminate the WellTerminated
check after a function "statement" (which could be a top-level declaration, or
an instance of our function statement extension, e.g. 'if (x) function f(){}',
neither of which should require semicolon termination).

The intent of the lastExprType parameter, the WellTerminated call from the
TOK_FUNCTION case, the call from the default expression-statement case, and the
#if JS_HAS_LEXICAL_CLOSURE code in WellTerminated appears to have been to allow
'function f(){} function g(){}' for JS versions < 1.2, and to forbid it as an
error otherwise, requiring a semicolon in between the function declarations.
But in fact ECMA and good sense should allow as many function declarations on
a line as you please, optionally followed by other statements, and without
requiring semicolons after function declarations.

Since this change removes an error case, I don't expect any incompatibility
bugs to be reported.

- Coalescing/inlining WellTerminated meant removing its call from MatchLabel,
called by the break and continue cases in Statement.

- The debugger keyword could be used without a semicolon terminator to make it
a statement, as in 'debugger 1 + 2;', parsed as a debugger statement followed
by an expression statement -- which seems quite wrong (ECMA reserves debugger
but does not specify its usage).

This bug arose due to the early return at the end of the TOK_DEBUGGER case.
Although that case called WellTerminated, because it returned rather than broke
from the main switch, it failed to match an explicit semicolon terminator (if
present), making 'debugger; 1 + 2;' parse as three statements, with the first
semicolon becoming an empty statement (contrary to ECMA automatic semicolon
insertion rules).
2004-01-05 07:47:49 +00:00
brendan%mozilla.org e9dafb918b Use macroized version of dbaron's fix for >65535 line script parsing bug (229006, r=shaver). 2004-01-03 18:19:51 +00:00
brendan%mozilla.org 6ee2318f17 Fix SCRIPT_FIND_CATCH_START to cope with exceptions thrown from prolog bytecodes (206199, r=shaver, a=asa). 2003-12-31 02:53:02 +00:00
technutz%netscape.net 45f084d02f MinGW bustage fix from bug 213910's landing. Patch by bsmedberg@covad.net. r=dbaron, sr=brendan 2003-12-30 17:53:17 +00:00
brendan%mozilla.org fbab0d1506 Don't JS_ReportOutOfMemory while holding script_filename_table_lock (r=self). 2003-12-30 07:54:09 +00:00
bsmedberg%covad.net b92b94f688 Bug 213910 - Implement Components.interfacesByID r=dbradley sr=jst 2003-12-28 04:37:57 +00:00
igor%mir2.org 34be2a53ad Cosmetics: removal of tabs left by the previous commit 2003-12-27 21:36:00 +00:00
igor%mir2.org a00caa1df4 Decompling parsing from code generation: compiler instances are created only when parsing tree is build. 2003-12-27 21:32:35 +00:00
igor%mir2.org 44815cf659 Initial patch to separate parsing from code generation: changing IRFactory so it can be created in Context. 2003-12-27 09:53:57 +00:00
igor%mir2.org c33fda9fe0 Renaming Kit.badArg() -> Kit.argBug() for consistency with Kit.codeBug() 2003-12-27 09:38:57 +00:00
igor%mir2.org 907cfb3edd Moving parsing code from FunctionNode.finishParsing to IRFactory to have better overview of parsing code. The optimizer now calls explicitly OptFunctionNode initialization instead of overriding FunctionNode.finishParsing in OptFunctionNode. 2003-12-26 17:17:21 +00:00
igor%mir2.org 9df6ce9622 Functions to report synatx errors are moved from TokenStream to Interpreter to remove dependancy on TokenStream in NodeTransformer. 2003-12-26 14:01:21 +00:00
igor%mir2.org b95d0b49fc Dropping scope argument from Context.compileString/compileReader since it is no longer used as Script instances are scope independent.
For compatibility the old form of Context.compileReader is preserved but marked as deprecated.
2003-12-25 22:37:57 +00:00
pschwartau%netscape.com 1a6a2b4e1c Updating README to reflect addition of collect.cgi to mozilla/js/perf/. 2003-12-23 22:46:04 +00:00
pschwartau%netscape.com dff48d551c Initial add. This is a CGI script that jsPerformance.pl can log results to. 2003-12-23 22:44:51 +00:00
brendan%mozilla.org 89a646c433 Disable bogus error check for { followed by a digit (228087, r=shaver). 2003-12-23 17:05:24 +00:00
brendan%mozilla.org 981b41757a Footprint wins: disable export/import from js1.5, fuse common code before a given jump target in js_Invoke, avoid unnecessary subtraction when enforcing ARGC_LIMIT. Also, clean up comment nits. 2003-12-22 06:15:14 +00:00
brendan%mozilla.org 2c463b266c Add an assertion to catch an embedding API usage error mentioned recently on m.jseng. 2003-12-22 06:13:07 +00:00
brendan%mozilla.org 1f9f878d5c Add JS_GetObjectId, void cx->exception in JS_ClearPendingException (127418, r=shaver). 2003-12-22 06:10:51 +00:00
nboyd%atg.com e6f3918cce Contribution from earestea@scanpak.com. 2003-12-18 20:55:30 +00:00
nboyd%atg.com bf80b55723 Add Aviva info. 2003-12-18 16:53:32 +00:00
pschwartau%netscape.com 0553a335c1 Adding more cases 2003-12-16 03:13:04 +00:00