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

5612 Коммитов

Автор SHA1 Сообщение Дата
igor%mir2.org 0b8d376817 Use non-static functions in Shell 2003-10-09 07:00:01 +00:00
igor%mir2.org 1532e6ac8b Cosmetics: removal of end-of-line junk space 2003-10-09 06:57:12 +00:00
igor%mir2.org 946702bcf1 Use newly introduced Context.initStandardObjects(), not initStandardObjects(null) in the documentation 2003-10-09 06:55:49 +00:00
igor%mir2.org 841c039322 dist depends on deepclean to prevent erroneous distribution builds when ant fails to detect source code dependencies and misses recompilation. 2003-10-09 06:44:38 +00:00
igor%mir2.org ba83445719 GlobalScope is a part of API now. 2003-10-09 06:42:30 +00:00
igor%mir2.org ac55982694 Cosmetics: change argument order for package-private EcmaError constructor to it matchers other cases when a method takes line and column number. 2003-10-09 06:41:28 +00:00
igor%mir2.org 4431450289 Added version of Context.initStandardObjects that does not take scope as its argument. 2003-10-09 06:37:25 +00:00
brendan%mozilla.org 8786153bd1 Late-breaking security fix (221526, r=shaver). 2003-10-07 23:02:29 +00:00
cls%seawood.org 540088e8fa What bryner said 2003-10-07 22:07:14 +00:00
bryner%brianryner.com 7dd357208e attempting to fix windows bustage 2003-10-07 21:18:57 +00:00
cls%seawood.org 378b851b12 Case matters.
Fixing mingw cross-compiling bustage.
2003-10-07 20:39:25 +00:00
igor%mir2.org 1f791c9fda Adding getParent() to omg.debug.DebuggableScript to allow to browse whole script function tree from any function. 2003-10-01 15:03:06 +00:00
igor%mir2.org 5fa056c85d Cosmetics: expanding tabs 2003-10-01 15:02:09 +00:00
igor%mir2.org 7a6878c0e9 Changing ScriptRuntime.initScript to return vois since it does not and should not change scope 2003-10-01 11:55:56 +00:00
igor%mir2.org 03ac8566e9 Extending omj.debug.DebuggableScript interface with functions to access nested functions and check if it is top-level script. 2003-10-01 11:55:55 +00:00
BradleyJunk%cinci.rr.com a8abe61adf Bug 220692 - Syntax error in /js/src/xpconnect/xpcmodule.cpp if MOZ_JSLOADER not defined. r=timeless, sr=brendan 2003-10-01 00:11:17 +00:00
pschwartau%netscape.com 6a080c99b8 Initial add. Regression test for bug 39309. 2003-10-01 00:03:32 +00:00
pschwartau%netscape.com 3f2915e0d1 Initial add. Regression test for bug 220584. 2003-09-29 17:45:15 +00:00
igor%mir2.org 7e809e3208 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=220584 :
Script() result has no prototype and scope chains

Fix: initialize scope and prototype for Script instances in
NativeScript.jsConstructor

If Script is called as a constructor, it will get the proper parent and
prototype from the generic code to initialize newly constructed objects but if
it is called as a function, then it is the responsibility of the call
implementation to do the job.
2003-09-28 22:52:57 +00:00
igor%mir2.org ce1bfbad95 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=220362 :
Local functions lose scope when called from outside (compiled with dynamic scopes, optlevel >= 0)

Fix: ignore dynamic scope for nested functions and functions declared within
the with statement.

The patch makes optimizer to behave in the same way as the interpreter does
with regard to dynamic scope: it ignores it for nested functions and functions
declared under with statements. Now parser checks for such functions and set
new flag itsIgnoreDynamicScope in FunctionNode. The flag then checked both by
interpreter and optimizer during byte code generation.

The patch also changes slightly interaction between changing dynamic scope flag
and interpreted Script instances. Currently the dynamic flag is read during
script execution but patch changes interpreter to behave exactly as the
optimizer does: the dynamic flag only affect script compilation, changes in its
value does not affect already compiled scripts.
2003-09-28 20:01:27 +00:00
igor%mir2.org 64ee78aaec Self-documenting example 2003-09-28 19:49:07 +00:00
igor%mir2.org 026f5acdd0 Added msg.adapter.zero.args 2003-09-28 18:14:16 +00:00
igor%mir2.org 4a3446307d JavaAdapter.createAdapterCode now takes the function name to function arity instead of Scriptable object. It allows to remove a hack from optimizer/Codegen where it created a temporary Scriptable just to populate it with FunctionNode as a source of arity values thus violating requirement on types of JS values.
The rest of JavaAdapter code is updated to use the ned form of the method as well.
2003-09-28 18:13:51 +00:00
igor%mir2.org b38d3d8ef9 In ScriptRuntime.toInt32 check for Integer, not Byte when doing short-circuit optimization since Integer is always used to wrap int values. 2003-09-28 16:03:10 +00:00
brendan%mozilla.org c9ea43af63 Redo thread/process stack size checking and API to avoid having to guess/fudge; instead, require embedders to advise explicitly, for fudge-free limits and backward API compatibility (192414, r=shaver). 2003-09-26 22:47:01 +00:00
pschwartau%netscape.com 996a0fd708 Improving readability. 2003-09-26 19:37:15 +00:00
pschwartau%netscape.com cd5d6878eb Initial add. Regression test for bug 220367. 2003-09-26 19:24:58 +00:00
pschwartau%netscape.com 5e0074371b Initial add. Regression test for bug 220362. 2003-09-26 18:56:23 +00:00
igor%mir2.org ac0d4eb822 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=220367 :
Fix: if in RegExpImpl.getParenSubString parens.get(i) is null, return
emptySubstring

If a branch of | with capturing () does not match , then RegExpImpl.parens will
contain null for corresponding $<group-number> according to code in
NativeRegExp.executeRegExp(). The current code does not check for a possible
null in RegExpImpl.parens when calling toString and the patch fixes that by
making sure that getParenSubString return SubString.emptySubString in such
cases.
2003-09-26 17:25:33 +00:00
brendan%mozilla.org 74e1a4f197 Follow-up fix to clamp cx->stackLimit so it doesn't wrap (192414, r=shaver). 2003-09-26 17:22:14 +00:00
brendan%mozilla.org 4d3ea782f9 Check in my version of a patch to avoid thread or process stack overflow from Igor Bukanov <igor@fastmail.fm> (192414, r=shaver). 2003-09-24 16:49:58 +00:00
igor%mir2.org 913e92ee46 Use ScriptableObject.getPropertyIds(jsObj) to get all object ids instead of explicit working throw prototype chain. 2003-09-24 13:35:52 +00:00
igor%mir2.org b482ee16b2 Optimization in getPropertyIds: since Scriptable.getIds returns unique ids, check against id duplication only if prototype chain contains more then one object with enumerable ids. It this way there is no need to allocate hash map in the common case of objects without enumerable properties on the prototype chain. 2003-09-24 13:32:42 +00:00
igor%mir2.org 1642f1695e Optimization in IdEnumeration: since Scriptable.getIds returns unique ids, check against id duplication only if prototype chain contains more then one object with enumerable ids. It this way there is no need to allocate hash map in the common case of objects without enumerable properties on the prototype chain. 2003-09-24 13:29:17 +00:00
brendan%mozilla.org 997ae59d09 Eliminate unnecessary local variable. 2003-09-23 00:07:24 +00:00
brendan%mozilla.org 1501ed6f52 Don't finish temp and code arena-pools in JS_GC, in case it's nesting in the compiler via the debugger (131712, r=rginda, sr=shaver). 2003-09-19 18:36:50 +00:00
igor%mir2.org 854e18e642 Use special subclasses of Node to represent various jumps and control structures to avoid allocating of property objects for frequently occurring parse tree nodes. 2003-09-18 16:20:32 +00:00
igor%mir2.org 3bfcd0e8e6 Mark parse subtree for finally statement with Token.FINALLY instead of using special property to mark USETEMP node. 2003-09-17 13:43:12 +00:00
igor%mir2.org 10f7bc1e8d Addressing http://bugzilla.mozilla.org/show_bug.cgi?id=219055 :
Delay creation of NativeError wrapper for EcmaError until the exception is caught in the script.
2003-09-16 16:08:55 +00:00
mkaply%us.ibm.com 0e55428e0f #215581
r/sr=brendan
Changes to get GCC 3.2.2 working on OS/2 - this set is OS/2 only changes
2003-09-15 22:10:12 +00:00
rginda%netscape.com e6e4bee726 bug 217768, interruptHandler isn't properly loaded if trapHandler returns JSTRAP_CONTINUE
sr=brendan
2003-09-15 18:50:10 +00:00
dougt%meer.net 03eb836195 Fixing 219094. Simple build bustage fix. r=darin 2003-09-15 04:13:19 +00:00
igor%mir2.org 5abaaa06f2 Changing Main.eval implementation to use compileString/exec instead of evalString to avoid dependancy on NativeGlobal when passing explicit thisObj to Script instances when they implement Function interface which holds currently in Rhino. 2003-09-12 17:12:20 +00:00
igor%mir2.org 93d0318b76 Cosmetics: identation fixes 2003-09-12 15:04:21 +00:00
igor%mir2.org 5aebbbe9d9 Siplified code to extract error message from Throwable to reflect recent changes in exception-related API semantics. 2003-09-11 15:41:06 +00:00
igor%mir2.org 9db4ab159d Changing Context.newObject to use ScriptRuntime.getExistingCtor to get constructor Function instance. In this way Context.newObject will throw the same set of exceptions that other parts of Rhino will throw on bad access to constructor.
With this change NotAFunctionException is no longer used so it is deprecated and changed to extend from Error not Exception for source compatibility: otherwise compiler will complain about unreachable catch handler.
2003-09-10 12:44:23 +00:00
igor%mir2.org 4c14c37359 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=218440 :
Making Script implementations by Interpreter and Optimizer scope independent while keeping while still supporting compiling of regexp literals only once per Script instance.
2003-09-10 11:06:25 +00:00
igor%mir2.org d498e94c0c Restoring NativeJavaPackage(String) constructor as deprecated for compatibility with Batik. 2003-09-09 13:27:11 +00:00
igor%mir2.org 6b88939df0 ScriptRuntime.getCatchObject is modified to allow to accept instances of EvaluatorException, not only its WrappedException subclass. 2003-09-09 13:25:15 +00:00
igor%mir2.org f7e67f2455 Restoring JavaScriptException(String) as deprecated constructor for compatibility with BSF. 2003-09-09 13:22:50 +00:00
pschwartau%netscape.com d6910cdd1e Initial add. Regresssion test for bug 216320. 2003-09-09 00:37:49 +00:00
bryner%brianryner.com 86ad399c4f Fix build on gcc 3.4 by removing extra semicolons (bug 218551). r/sr=dbaron, a=brendan. 2003-09-07 22:37:27 +00:00
igor%mir2.org 61a75d60bc Explicit separation between regexp compilation and execution: all data structures that represent compiled regexp are moved to a separated RECompiled class. 2003-09-06 15:49:05 +00:00
igor%mir2.org 51314a3313 To construct regexp objects the generated code now calls omj.RegExpProxy instead of explicit calls to NativeRegExp constructor. It removes dependence of compiled Script instances on details of RegExp implementation. 2003-09-06 15:44:41 +00:00
igor%mir2.org 5f745d1f6e Added ScriptRuntime.checkRegExpProxy which is used in Interpreter and NativeString to check for regexp package presence instead of own duplicating code.
RegExpProxy.find_split is changed to include Context argument to follow the rest of RegExpProxy functions.
2003-09-06 15:41:03 +00:00
igor%mir2.org 5a252e7afe I made most internal functions of NativeRegExp static since they do not reference NativeRegExp. 2003-09-06 12:49:07 +00:00
igor%mir2.org 6497b67f9c ScriptRuntime.main now takes Script as the first argument since it is simpler instantiate Script directly and pass it to ScriptRuntime.main then load Script lass which will be then instantiated in ScriptRuntime.main 2003-09-06 07:51:02 +00:00
igor%mir2.org 4bad77a49f Replace Context field In REGlobalData by boolean multiline since it is the only information that is needed for matching code from RegExpImpl which was previously accessed through Context. 2003-09-05 21:22:51 +00:00
igor%mir2.org 07c84846bc Fixing regression caused by optimizer changes to address http://bugzilla.mozilla.org/show_bug.cgi?id=198086 :
Now Script.exec can be called more then once.
2003-09-05 21:17:58 +00:00
igor%mir2.org 1e3baffb2a Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=213279 :
Replacing static caches by global scope based storage.
2003-09-05 14:35:09 +00:00
igor%mir2.org 195739a349 Patch from Nicolas JOUVE to address http://bugzilla.mozilla.org/show_bug.cgi?id=218163 2003-09-05 09:04:36 +00:00
igor%mir2.org 80cab2fc94 Cosmetics: removal of EOL blanks 2003-09-03 14:26:39 +00:00
igor%mir2.org 67749a7953 Work for http://bugzilla.mozilla.org/show_bug.cgi?id=213279 :
Code for NativeJavaPackage.TopLevelPackage is moved to a separated file NativeJavaTopPackage.java
2003-09-03 10:42:36 +00:00
brendan%mozilla.org 34309a2ace Fix js_FinishTakingSrcNotes edge-case (bug 216320, r=shaver, a=asa). 2003-09-03 02:10:38 +00:00
igor%mir2.org cabd0efab4 Fix from Merten Schumann to initialize lineNumber/sourceName in the constructor, see http://bugzilla.mozilla.org/show_bug.cgi?id=217584 . 2003-09-02 12:32:41 +00:00
igor%mir2.org 36aaed961a Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=214594 :
In IRFactory.createLoop propagate line number information to the condition subtree for "while" and "for" loops so exceptions generated in a loop condition would have proper line number.
2003-09-02 06:23:20 +00:00
igor%mir2.org c8275b1f14 Fix from Olivier Oeuillot to address http://bugzilla.mozilla.org/show_bug.cgi?id=212395 . 2003-09-01 13:32:33 +00:00
igor%mir2.org 737a2a03c0 Fix from Ming-Yee Iu to address http://bugzilla.mozilla.org/show_bug.cgi?id=217951 2003-09-01 11:06:03 +00:00
igor%mir2.org 348f0a5a75 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=217379 :
The code in RegExpImpl.findReplen did not take into account that a particular
parenthesis pair can be null if it is not captured. The patch fixes that to
send undefined to the replace function for that case.
2003-09-01 09:05:52 +00:00
igor%mir2.org bc6bf1fc38 Fix for DToA.JS_dtoa() to resolve http://bugzilla.mozilla.org/show_bug.cgi?id=217268 2003-08-31 19:42:58 +00:00
igor%mir2.org f969c11384 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=217346 :
I changed DToA.JS_dtobasestr to use BigInteger for its integer part when it does not fit long.
2003-08-30 15:34:44 +00:00
igor%mir2.org 26296c096d Finalizing work on http://bugzilla.mozilla.org/show_bug.cgi?id=198086 :
Now optimizer generates exactly one class per script and all its functions.
2003-08-30 12:02:19 +00:00
igor%mir2.org a2a564b53c Changing ScriptRuntime to return vois since it does not and should not change scope 2003-08-30 12:02:18 +00:00
igor%mir2.org 63aef961cd More fixing for http://bugzilla.mozilla.org/show_bug.cgi?id=217584 :
Use Context.getSourcePositionFromStack in the EvaluatorException(String details) constructor to get line number information.
2003-08-30 11:59:15 +00:00
pkw%us.ibm.com 13b592f34c Bug 217499: Clean up AIX libpath and configure script
r=cls@seawood.org, a=asa@mozilla.org
2003-08-29 17:15:06 +00:00
igor%mir2.org 026e55d006 Cosmetics: removal end-of-line blanks 2003-08-29 15:28:08 +00:00
igor%mir2.org e143e6b01b Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=217584 :
Implementation of Merten Schumann suggestion to add to EvaluatorException and JavaScripException information about script source name and error line .
2003-08-29 13:19:37 +00:00
igor%mir2.org 94cf77a758 More work for http://bugzilla.mozilla.org/show_bug.cgi?id=198086 :
The patch changes omj.NativeScript to represent only instances of Script object
in scripts and removes its second role to server as a superclass for compiled
forms of JS scripts. In is not only allow to make optimizer to generate only
single class but also would make instances of Script generated by optimizer not
to depend on the scope. The later is essential for Script object reuse to
execute it against different scopes.
2003-08-29 10:42:23 +00:00
igor%mir2.org f451118048 Working on http://bugzilla.mozilla.org/show_bug.cgi?id=198086 :
Now optimizer will generate only one class for all functions a script contains instead of class per function.
2003-08-28 12:40:10 +00:00
igor%mir2.org 035192c8be Changing signature of addConstant from short to int and updating the code correspondingly to allow for constant indexes to exceed 32K since their type is unsigned short, not short and int allows to cover that while removing casts. 2003-08-28 12:29:01 +00:00
igor%mir2.org e258a29853 1. Removal of NativeScript.initScript which was empty and was never overridden by script function implementations.
2. Using in NativeScript.compile Context.compileString instead of compileReader to avoid unnecessary construction of StringReader.

3. Overriding NativeFunction.getEncodedSource() in NativeScript to call this method on the delegated script object so decompilation of scripts constructed via script.compile would work.
2003-08-27 11:53:01 +00:00
igor%mir2.org ae2cb1ea90 NativeFunction.decompile abd NativeFunction.initScriptFunction are final since script function implementations should not override them. 2003-08-27 11:47:19 +00:00
igor%mir2.org eb2de8c08c New form of markTableSwitchCase that allows to mark a switch case jump target and adjust stack top. 2003-08-27 11:44:46 +00:00
igor%mir2.org b515f98de1 Added NativeFunction.initScriptFunction to initialize NativeFunction.argNames, NativeFunction.version and its usage in InterpretedFunction/InterpretedScript.
It will allow to make the protected fields in NativeFunction private when the optimizer will be updated to use the new function.
2003-08-26 18:06:10 +00:00
igor%mir2.org 86ebe14d54 Added public static final String[] emptyStrings to denote zero-length string array 2003-08-26 15:45:16 +00:00
igor%mir2.org 4047861bf2 Using ScriptRuntime.emptyStrings to return emoty var array 2003-08-26 15:45:15 +00:00
igor%mir2.org a9f4d1e47b Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=217257 :
Patch from Larry Blair to fix decodeURIComponent()
2003-08-26 15:45:14 +00:00
igor%mir2.org 0439643ca6 Making createObject public so optimizer implementation can access it outside BaseFunction subclass 2003-08-26 15:45:13 +00:00
igor%mir2.org 3f846adf77 1. Support for generation tableswitch code
2. Utility method addLoadThis() as an alias for add(ByteCode.ALOAD_0)
2003-08-26 15:43:11 +00:00
igor%mir2.org fd9857dc15 Fixing line-table initialization issue: set itsLineNumberTableTop to 0 at the end of stopMethod so generation of multiple methods with source line information would work. 2003-08-22 09:10:14 +00:00
caillon%returnzero.com c11c6acb17 Backing out the patch to bug 83536.
I will reland this when 1.6a re-opens.
r+sr=jst@netscape.com
a=chofmann
2003-08-22 03:06:53 +00:00
igor%mir2.org feaebaffbd Cosmetics: removal of end-of-line blanks 2003-08-20 11:11:00 +00:00
igor%mir2.org 6c33282a4d Splitting Codegen into 2 Codegen and BodyCodegen where the second class contains code to generate butecode for the body of script. 2003-08-20 10:52:54 +00:00
igor%mir2.org 157bd43021 1. Codegen.classNameToSignature is removed and call to the methods are replaced by cfw.classNameToSignature.
2. Calls to ClassFileWriter.fullyQualifiedForm are removed since all ClassFileWriter API accepts both dotted and slashed forms of Java class names.

3. Few identation fixes
2003-08-20 07:36:33 +00:00
igor%mir2.org 429111a705 1. Added ClassFileWriter.classNameToSignature to convert Java class name into JVM signature.
2. The public method getFullyQualifieedForm that was used to replace . to / is removed since all classname API accepts both form of class names and convertion to the internal /-form can be done in ClassFileWriter in a more efficient way.
2003-08-20 07:32:48 +00:00
pschwartau%netscape.com 4585faf2b3 Correcting a typo. 2003-08-19 16:45:03 +00:00
pschwartau%netscape.com d399b7e7b8 Initial add. Regression test for bug 216591. 2003-08-19 16:36:54 +00:00
igor%mir2.org dec1ba89ae More renames and preparations for code split. 2003-08-19 15:37:50 +00:00
igor%mir2.org f9a067e749 More preparations for separating code to generate main script method and the rest of methods. 2003-08-19 13:19:57 +00:00
igor%mir2.org f4ef5c00b7 1. Renaming Codegen.classFile to Codegen.cfw and removal of methods like push/load/store in favour of directly calling ClassFileMethods.
2. Move all code related to generating of prologue for main function implementation to Codegen.generatePrologue.

In this way the following patch to split Codegen into 2 classes to factor away all generation code for the main function will look smaller.
2003-08-19 08:21:36 +00:00
igor%mir2.org a9ed8d9651 Renaming [ilfda]load/store into add[ILFDA]Load/Store for consistency and moving package-private functions from ByteCode to ClassFileWriter so JVM does not need to load ByteCode since it includes only constants. 2003-08-19 08:15:33 +00:00
igor%mir2.org 4b5fa8776f Replace few usages of Node.cloneNode by a more explicit code to create a fesh childless node copy. 2003-08-18 14:27:51 +00:00
igor%mir2.org 614d63535f Using simple Token.<op> instead of (Token.EQOP, Token.<op>) to denote parser nodes for equality operations. It allowed to remove sharing of Node.intValue to mean line number and operation type so it was renamed to Node.lineno. 2003-08-18 11:53:00 +00:00
igor%mir2.org aa709dd3ba Added store/load function to shortcut add(ByteCode.x, i) 2003-08-18 11:49:39 +00:00
igor%mir2.org d6f2cfc479 Using simple Token.<op> instead of (Token.RELOP, Token.<op>) to denote parser nodes for relational operation. 2003-08-18 09:55:19 +00:00
igor%mir2.org aba31de195 Move code to classify binary and relation operation tokens to IRFactory so parser does not need to know about details of tree implementation. 2003-08-18 08:05:06 +00:00
igor%mir2.org 5ccaea2003 Changing order of parameters in ScriptRuntime.instanceOf to match order in ScriptRuntime.in to use simpler code in optimizer. 2003-08-18 08:00:55 +00:00
igor%mir2.org c3d4e19b03 Removal of unnecessary instanceOf: Scriptable does not have such method and Undefined does not need to override it. 2003-08-18 07:57:40 +00:00
cls%seawood.org c08e99a287 Set MODULE in makefiles at the top of a heirarchy so that module-deps lists are more precise and builds will have the proper order if some subdirs contain other modules. 2003-08-16 00:42:35 +00:00
igor%mir2.org 05b377eb6b Make all convertions from == to === to support JavaScript 1.2 to single place in Parser 2003-08-15 16:48:56 +00:00
igor%mir2.org 8ebab73aa6 Added explicit IRFactory.createIncDec to create ++/-- subtree which removed need to have Token.PRE/Token.POST. 2003-08-15 11:19:47 +00:00
igor%mir2.org 807d553c04 Removal of Token.UNARYOP: after the previous patches parse tree used Token.UNARYOP only to group Token.TYPEOF and Token.VOID into the same node type. Since they are very different, it is simpler to use the tokens directly as node type.
To remove ambiguity caused by re-use of Token.VOID to denote no-operation node, a new Token.EMPTY is added to denote the former usage.
2003-08-15 10:21:09 +00:00
igor%mir2.org 945c6bd1ec Added Token.TYPEOFNAME to denote explicitly parser nodes for typeof(name) to make code more explicit about this case compared with typeof(expression) which is denote by Token.TYPEOF. Previously the ambiguity was resolved by using (Token.UNARY.OP, Token.TYPEOF) for parser tree nodes denoting the later and simple Token.TYPEOF for the former. 2003-08-15 09:00:42 +00:00
igor%mir2.org f82801fd15 Another replace of (Token.UNARYOP, Token.X) -> Token.X: this time it is for Token.BITNOT and Token.NOT 2003-08-15 08:11:32 +00:00
igor%mir2.org be4c1a98f2 Changing Token.POS, Token.NEG to represent their parser tree nodes by the token themselves, not via pair Token.UNARYOP, POS/NEG. It simplifies code especially in optimizer/Optimizer.java 2003-08-15 07:15:07 +00:00
igor%mir2.org 423b5b900f Removal of Token.TONUMBER: it had exactly the same semantics as Token.POS, that is to convert its argument to number. 2003-08-15 06:08:44 +00:00
rginda%netscape.com 4829d7f297 bug 216112, "add ability to disable object tracking in jsd"
r=caillon, sr=brendan, a=asa

adds the ability to turn off the object tracking without having to disable the debugger.  should make a dormant venkman less of a performance impact.
2003-08-14 22:49:09 +00:00
igor%mir2.org 5447c67824 Removal of Token.PRIMARY: it was used in parser to group primary tokens such as false, true, null, this but since the semantic of them is very different it is simpler to create parse tree nodes directly from tokens and check only for node type, not for type and operation. 2003-08-14 14:49:46 +00:00
igor%mir2.org 683197bd59 Parser tree nodes of Token.CONVERT type are replaced by Token.TONUMBER and additional optimizer nodes to convert to double or object eliminating the need to distinguish them by Node.TYPE_PROPERTY. 2003-08-14 11:21:46 +00:00
igor%mir2.org 6b7800c03d Removal of TypeEvent since its essential functionality beyond the declaration of few constants was used only to implement OptLocalVariable.assignType. Inlining that code eliminated need in TypeEvent. 2003-08-14 06:03:22 +00:00
brendan%mozilla.org 1f78682ed5 One more comment tweak. 2003-08-14 01:19:30 +00:00
brendan%mozilla.org 68fcf03cb1 Followup to last checkin to better comment the dependency I missed. 2003-08-14 01:17:27 +00:00
igor%mir2.org 2d24913e43 Change TokenStream to return operational tokens as is without grouping them through Token.UNARY, Token.PRIMARY etc. Instead do grouping only in parser. In this way exceptional cases when grouping of tokens has to be changed by parser (like reinterpretation of Token.IN) it is easy to deal with. Another advantage is decompiler simplification since it does not need to perform nested switches to unwrap tokens. 2003-08-13 14:21:39 +00:00
igor%mir2.org b6cc816a7e I replaced Token.ADD/Token.SUB by Token.POS/Token.NEG as operands of UNARY operation nodes in parse tree. This is mostly for readability and to catch ADD/SUB misuse earlier. 2003-08-13 11:57:33 +00:00
igor%mir2.org 1207aaf29d Cosmetics: nodeOp as variable name is replaced by assignOp in methods related to construction of assignment nodes. 2003-08-13 11:53:14 +00:00
igor%mir2.org 41850a6a58 Change Parser to use IRFactory.createAssignment to create assignment nodes instead of calling createBinary only to handle assignments explicitly in IRFactory later. 2003-08-13 10:51:38 +00:00
brendan%mozilla.org ecc678e336 Really fix 215878, with great help from darin. 2003-08-13 06:54:13 +00:00
igor%mir2.org b295ff2879 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=215923 :
Search prototype chain of JS this until wrapped Java object is found that is compatible with Java this.
2003-08-13 06:04:41 +00:00
brendan%mozilla.org 23e1763316 Restore next-to-last rev, which is harmless. 2003-08-13 05:25:04 +00:00
darin%meer.net da75c3136d backing out changes for bug 215878 to clear tinderbox orange (startup crash) 2003-08-13 05:17:14 +00:00
brendan%mozilla.org de76eafb5a Fix js_FinishTakingSrcNotes 'logic gap' bug (215878, r=shaver, a=dveditz). 2003-08-12 23:42:55 +00:00
igor%mir2.org ab08a3b216 Making Decompiler.decompile public and changing NativeFunction.getSourceFunction() to return Object so it is easy to implement alternative presentation of encoded source. 2003-08-12 13:12:39 +00:00
igor%mir2.org ec958a8bd4 Encoded source presentation changes.
Now encoded source does not encode sources of nested functions as external references. Rather they are encoded as any other source elements and to implement function.toString() runtime stores starting and ending offsets for function encoded source.

In this way decompiler is separated from the rest of runtime and external applications can access the encoded source with less efforts.
2003-08-12 11:50:48 +00:00
igor%mir2.org 494a57b800 Using ScriptRuntime.emptyStrings to return emoty var array 2003-08-12 11:50:45 +00:00
igor%mir2.org 35a6276528 Switching to use ClassFileWriter.addPush(String) instead of ClassFileWriter.addLoadConstant(String) to support string constants with JVM UTF8 encoding exceeding 64k. 2003-08-11 14:54:19 +00:00
igor%mir2.org ea022380ec Fixing bugs in the initial implementation of ClassFileWriter.addPush(String): now it works 2003-08-11 14:14:12 +00:00
igor%mir2.org ed090e665d Use special token to encode function escape in Decompiler instead of using elaborated code to distinguish between start of function and function escape. 2003-08-11 11:06:21 +00:00
igor%mir2.org 4c2e90dc66 Adding readFile function to the shell to read file context. 2003-08-11 10:54:40 +00:00
igor%mir2.org bcc6e01937 making decompiler class public so public method Parser.parser still can be called from outside omj. 2003-08-08 16:42:41 +00:00
igor%mir2.org 05eb524d3a Pass Decompiler object as an argument for Parser.parse instead of creating an instance there for better flexibility. 2003-08-08 15:42:19 +00:00
igor%mir2.org 9f0dfa296b Calling Decompiler.decompile directly instead of calling Parser.decompile 2003-08-08 15:36:48 +00:00
igor%mir2.org 96a2d4f7b0 Decompiler class is moved to a separated file 2003-08-08 10:35:57 +00:00
igor%mir2.org e7294c0d66 1. Fixing Decompler.decopile for a function body when justBody is true Token.LC is added to the list of tokens to skip in function header.
2. Various cleanups in Decompiler to finalize Parser/Decompler split.
2003-08-08 09:35:36 +00:00
igor%mir2.org 282751793f push(int/double) simply calls now ClassFileWriter.addPush() 2003-08-08 09:32:40 +00:00
igor%mir2.org a837af4e01 Added addPush(String) to generate code to push the given String into stack even if String does not fit the class file format restriction that JVM utf-8 encoding of strings in constant pool can not exceed 64K - 1.
Also added addPush(int/double) for symmetry, they are copied here from omj/optimizer/Codegen.java.
2003-08-08 09:30:57 +00:00
igor%mir2.org 807f86937c Restoring from bad commit of development uncompilable code 2003-08-07 15:10:10 +00:00
igor%mir2.org 1c21aeb4b2 Notification of debugger about finished compilation of script/top-level-function is moved to a separated function. In this way Interpreter and ScriptOrFnNode does not need to pass original source around just to throw it away if debugger is not present. 2003-08-07 15:08:00 +00:00
igor%mir2.org 02965674fe Replace anonymous/empty name play for functions constructed through Function in NativeFunction/Parser by using anonymous when necessary when assembling function source from Function arguments. 2003-08-07 10:46:41 +00:00
igor%mir2.org 6ef6f731d0 Less generic code for interactioon between Parser and Decompiler 2003-08-07 07:19:16 +00:00
igor%mir2.org 64eb193a93 Code to generate/decode encoded source presentation is factored to a separated class Decompiler. 2003-08-06 16:18:28 +00:00
igor%mir2.org 8a7aea78a4 1. Add Token.NOT as a byte code instead of generating if code to push false/true as "!" is frequent enough and interpreter does not have optimized mode to remove most of its usage in logical context.
2. When dumping icode, print it to System.out instead of icode.txt file for more convenient development.
2003-08-06 11:37:14 +00:00
igor%mir2.org bd839e9869 build.xml reorganization to add deepclean, clean and help targets and making help a default target, see for details http://bugzilla.mozilla.org/show_bug.cgi?id=214997 2003-08-06 07:47:58 +00:00
igor%mir2.org b4041d1788 More tokens used only in Interpreter are moved from Token to Interpreter. I also added addToken/addIcode to be used instead of simple addByte to catch bugs about wrong byte code as soon as possible. 2003-08-06 07:39:37 +00:00
igor%mir2.org 8cd43155f4 I changed Context.codeBug to return RuntimeException instead of void to be able to wright "throw Context.codeBug()" when simple "Context.codeBug()" leads to a compile error about unreachable code or missed return. 2003-08-06 07:37:27 +00:00
brendan%mozilla.org f1392f57b4 I can't believe that after all the work for bug 208030, I forgot to re-base js_GetSrcNote's notion of note origin to the script's prolog, from its main entry point (214761). 2003-08-06 06:56:01 +00:00
brendan%mozilla.org f6be8fe74f Add shared DHashTableOps for [const] char *key use-cases, clean up dhash API abusages (214839, r=dougt, sr=dbaron). 2003-08-05 20:09:21 +00:00
igor%mir2.org 0e29410001 1. Constants in Token that are used only as Interpreter bytecode are moved to Interpreter.
2. LAST_BYTECODE_TOKEN is added to Token to server as a base for internal Interpreter bytecodes instead of Token.LAST_TOKEN. In this way compiler can generate more denser code for switches over interpreter bytecode.
2003-08-05 15:58:39 +00:00
igor%mir2.org 86cd62c38a SOURCEFILE bytecode used to restore interpreter source information is replaced by setting cx.interpreterSourceFile at the beginning of Interpreter.interpreter and restoring the old value at the end. 2003-08-05 11:16:14 +00:00
igor%mir2.org 77701f3d53 I moved definitions of tokens in Tokenstream to separated class Token. In this way minimal Rhino distribution way remove Token class since it only necessary during compilation and strings with constant names would not be loaded into JVM. 2003-08-04 15:00:06 +00:00
igor%mir2.org 668a70e247 Initialize cx.interpreterSourceFile with script o r function source name before starting bytecode execution so this information for the first script throw/runtime exception 2003-08-04 13:01:06 +00:00
igor%mir2.org 41be961fb9 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=214945 :
Optimize away empty try block only if finally is empty as well.
2003-08-04 12:57:15 +00:00
igor%mir2.org 5c9fcbc358 <center><h1>... is replaced by <h1 align=center> to avoid warning from javadoc 2003-08-04 07:51:19 +00:00
brendan%mozilla.org 17e627c3ed Prevent recursive divergence via watchpoint handlers (213482, r=scole). 2003-08-03 21:59:50 +00:00
igor%mir2.org 06ea9ce3ff Fixing /** coments to remove JavaDoc errors/warnings 2003-08-03 21:40:22 +00:00
pschwartau%netscape.com 6a2888809e Rhino shell has been updated to exit with code 3, not 1 on OutOfMemory/StackOverflow exceptions. 2003-08-03 18:20:24 +00:00
cls%seawood.org ad20d0d29c Remove unused references to xpcom_obsolete
Bug #38122 r=dougt sr=bryner
2003-08-02 20:17:28 +00:00
cls%seawood.org 8216341e1a Fixing XPCONNECT_STANDALONE bustage 2003-08-02 19:33:52 +00:00
brendan%mozilla.org ad3c46d676 Fix JS_SetTrap to cope with existing trap at same PC, overwriting its handler and closure (213841, r=self). 2003-08-01 23:16:04 +00:00
igor%mir2.org 13d2351d26 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=214608 :
The reason for the regression is that now JavaMembers.lookupClass never
attempts to reflect package-private classes. But this is wrong since even with
SecirutyManager installed JVM allows to call Class.getMethos()( and returns
list of all public methods in the class and its super classes.

The patch removes the restrictions while making JavaMembers.lookupClass much
simpler.
2003-07-31 17:08:58 +00:00
brendan%mozilla.org 90cd6a1b97 Fix off-by-N in CG_COUNT_FINAL_SRCNOTES (214210). 2003-07-29 09:11:04 +00:00
brendan%mozilla.org 878a435300 Fix 7x bloat bug due to off-by-1-level-of-indirection in sizeof type param typo (214176, r=Mitch@0Bits.COM). 2003-07-28 20:58:52 +00:00
brendan%mozilla.org abac0ba1fe Undo critical part of last change to try to fix crashing testerboxes. 2003-07-28 18:30:12 +00:00
brendan%mozilla.org 77f1747424 Minor cleanups to last checkin. 2003-07-28 05:46:18 +00:00
brendan%mozilla.org 32d941a463 Big dynamic footprint win via script filename caching, plus line number fix for strict/const diags (see http://bugzilla.mozilla.org/attachment.cgi?id=127130&action=view for detailed checkin comments; 208030, r/rs=shaver, r=rginda on the jsd change, r=jst on the dom change). 2003-07-26 22:37:11 +00:00
igor%mir2.org 5b5659a759 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=213231 :
All information about exception handlers are stored in exception table eliminating the need to have TRY bytecode.
2003-07-24 10:50:29 +00:00
igor%mir2.org c51b5baef2 Work in progress on http://bugzilla.mozilla.org/show_bug.cgi?id=213231 :
Replacing try stack by static table of exception handlers
2003-07-24 10:46:46 +00:00
igor%mir2.org 1c5587194f Work in progress on http://bugzilla.mozilla.org/show_bug.cgi?id=213231 :
When handling exceptions, restore proper scope without using try stack
2003-07-24 10:45:30 +00:00
igor%mir2.org 3d44748251 Restoring NativeJavaMethod(Method, String) for backward compatibility. 2003-07-24 09:06:44 +00:00
caillon%returnzero.com 9c22160a4b Bug 83536.
Merge script principal implementations into one class.
Should reduce footprint, speed up calls to caps a little bit, and fixes several memory leaks.
Also fixes bugs 211174 and 211263
r=jst@netscape.com
sr=bzbarsky@mit.edu
moa=mstoltz@netscape.com (he looked at an earlier patch and said it looked fine, and will do a retroactive review when he returns from vacation as well)
2003-07-24 05:15:20 +00:00
mkaply%us.ibm.com 539cfcb481 rs=leaf
Remove XP_OS2_VACPP from the tree
2003-07-22 21:08:40 +00:00
mkaply%us.ibm.com 1513a68f57 rs=leaf
Remove XP_OS2_VACPP from the tree
2003-07-22 20:29:43 +00:00
mkaply%us.ibm.com 56dc425c51 rs=leaf
Remove XP_OS2_VACPP from the tree
2003-07-22 18:38:01 +00:00
igor%mir2.org 44b2b7a51b Move code to adjust stack depth for finally handler from TARGET case of the main switch in generateICode to TRY switch generating all the code for try. It allows to remove special marking of JSR targets with FINALLY_PROP and make stack handling for catch and finally block uniform. 2003-07-22 13:41:35 +00:00
igor%mir2.org 08be0f19ff Removal of JTHROW byte code: instead of generation byte code pair [GOSUB exception handler], JTHROW, RETSUB from finally now supports re-throwing of exception object directly when called from exception handler.
Now the exception handler invokes finally code with the exception object on the stack top, not PC to return which allows RETSUB to distinguish between this and GOSUB invocation.
2003-07-22 13:04:07 +00:00
igor%mir2.org b13e48a42a Move ENDTRY, JTHROW, GOSUB and RETSUB from TokenStream to Interpreter as they specific only to Interpreter implementation. 2003-07-22 11:16:54 +00:00
igor%mir2.org 806103a6b0 Removal of code to handle stack chages when generationg GOSUB to finally code for finally handler: the stack size adjustments is done during FINALLY code generation already. 2003-07-22 08:58:08 +00:00
igor%mir2.org 293663835f When generating code to invoke finally block from exception handler, do not store exception object in the local slot but rather leave it on JS stack and update finally block generation to expect potentially 2 objects on stack, not single return pc address. 2003-07-21 16:27:48 +00:00
igor%mir2.org 2d7d723eef Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=201893 :
New class MemberBox wraps Method or Constructor instances to cache results of getParameterType() and other information and to to replace Method instance by more accessible one recovery from IllegalAccessException is possible.
2003-07-15 20:47:29 +00:00
igor%mir2.org 88bc61b4a7 Cosmetics: layot fixes 2003-07-15 20:44:17 +00:00
timeless%mozdev.org 2edc8745a1 Bug 212287 xpcwrappedjsclass.cpp:891: warning: unused variable `PRUnichar * sourceNameUni'
r=dbradley sr=kin
2003-07-14 21:13:46 +00:00
timeless%mozdev.org 186b4f709f Bug 212266 xpcexception.cpp:236: warning: assignment of negative value `-1' to `unsigned int'
r=dbradley sr=kin
2003-07-14 21:12:24 +00:00
jaggernaut%netscape.com 20004e3489 Bug 73353: clean up MODULE/REQUIRES story. r=cls, sr=bryner 2003-07-13 22:29:00 +00:00
igor%mir2.org 425cf932f1 Throw IllegalArgumentException from compileString/compileReader if script line number is negative instead of catching it much later via Context.codeBug(). 2003-07-09 19:27:46 +00:00
igor%mir2.org 911194379d 1. To evaluate script represented by String, use Context.evaluateString to avoid the need to create StringReader instances.
2. Catch VirtualMachineError so on out-of-memory/stack-overflow the shell will exit with System.exit(EXITCODE_RUNTIME_ERROR), not with 1. It will allow to distinguish cases when script tried to consume all available stack/memory with bugs in Rhino itself leading to NullPointerException etc.

3. Remove code to rethrow ThreadDeath from JavaScriptExcception since ThreadDeath is re-thrown by the engine itself.
2003-07-06 19:21:42 +00:00
igor%mir2.org 24a1f6c04d Caching of Method/Constructor.getParameterType()
To avoid constant calling of Method/Constructor.getParameterType() which creates a new Class array on each call, NativeJavaMethod stores the parameter types for its methods in methodTypes array and similarly JavaMembers holds all constructor types in ctorTypes array. The cached Class arrays are passed explicitly to methods that previously called getParameterType().
2003-07-06 19:07:00 +00:00
igor%mir2.org 5cb6af55e7 Cosmetics: use
import java.lang.reflect.*;
import java.io.*;

instead of explicit importing multiple classes.
2003-07-06 19:02:03 +00:00
igor%mir2.org 90d98c2fd0 NativeJavaMethod.add is removed. It allows to assume that after NativeJavaMethod constructor methods array will remain the same, which I will use in the following patch to add caching of Method.getParameterTypes.
Instead of calling NativeJavaMethod.add, JavaMembers assemble the method list directly and then pass it to NativeJavaMethod when done.
2003-07-06 18:59:30 +00:00
igor%mir2.org 77e05e0e7b Pass staticType to wrapAsJavaObject to restore an option to use it for reflection instead of dynamicType if a security manager prevents the later 2003-07-06 18:51:54 +00:00
igor%mir2.org 70cfc8b896 More JavaMembers cosmetics:
1. All its methods package private methods that are not accesible outside the class itself are made private.

2. Various package-private getters are removed in favor of direct field access.
2003-07-06 18:51:53 +00:00
igor%mir2.org b0389f951d 1. Changing NativeJavaMethod.findFunction to return index of found method instead of the method itself to make smaller the following optimizations of findFunction.
2. Removal of NativeJavaMethod.getMethod that simply returned package-private field NativeJavaMethod.methods since the filed itself was accessed directly by other files.
2003-07-05 22:13:33 +00:00
igor%mir2.org 0ec6e88645 Added reportRuntimeError4 and getMessage4 to build 4-argument messages 2003-07-05 22:05:55 +00:00
igor%mir2.org a6b675e615 For compatibility, resurrect unwrap as deprecated method. 2003-07-03 18:51:16 +00:00
pschwartau%netscape.com 388ff90850 Initial add. Regression test for bug 210682. 2003-07-02 23:43:09 +00:00
igor%mir2.org 82aeb6ef28 Added public FunctionObject.getMethodOrConstructor() to resolve
http://bugzilla.mozilla.org/show_bug.cgi?id=108719
2003-07-02 21:07:44 +00:00
igor%mir2.org d5b6570f2f Do not store dynamic scope flag in the object. Instead when checking thisObj against Java this type use scope != getParentScope() to detect such usage. 2003-07-02 19:41:48 +00:00
igor%mir2.org 63f322dbc8 Updating exception debugging to reflect changes due to http://bugzilla.mozilla.org/show_bug.cgi?id=210605 . 2003-07-02 16:37:29 +00:00
igor%mir2.org 0fd587e9cb Reorganization of Java and JavaScript exception iteraction. See http://bugzilla.mozilla.org/show_bug.cgi?id=210605 for details. 2003-07-02 16:35:51 +00:00
igor%mir2.org 382a86a3ac 1. Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=102093 :
In NativeCall constructor adds argument object only if there is no parameters with this name and similarly do not set arguments to undefined if the function has "var arguments".

2. Split NativeCall into NativeCall and NativeCallPrototype to allow for smaller activation objects with faster property access.
2003-07-02 16:31:54 +00:00
igor%mir2.org da994ea70d Cosmetics: end-of-line junk space removal 2003-07-01 07:18:07 +00:00
igor%mir2.org 6884fa2379 Teach Committing.generateCatchBlock() to generate catch blocks for EcmaError exceptions to avoid code duplication. 2003-06-30 20:21:32 +00:00
igor%mir2.org e7c259d18c The code to deal with caught Java exceptions and transfer control to script finally/catch is transfered to CATCH bytecode which is now always added to the and of script bytecode. In this way if Context.observeInstructionCount throws an exception, a proper cleanup to restore Interpreter runtime will still be carried out. It also allowed to transfer control directly to catch/finally code when script call throw instead of throwing Java exception just to capture it immediately.
This special CATCH bytecode is a simple way to workaround lack of goto in Java which makes writing interpreters more complex then necessary...
2003-06-30 19:31:44 +00:00
igor%mir2.org 6edb24a69c Added ScriptRuntime.getCatchObject() for extracting JS object to pass as the argument to JS catch statement. 2003-06-30 19:21:41 +00:00
igor%mir2.org e9a24f4c38 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=210682 :
A slightly modified version of Brian Gugliemetti fix for bad interaction in TokenStream.getToken()/peekTokenSameLine() when dealing with EOL.
2003-06-30 19:18:31 +00:00
igor%mir2.org be6ac6dc93 Removal of deprecated DefiningClassLoader 2003-06-29 22:32:52 +00:00
igor%mir2.org c3de7c7797 Exception handling cleanup: use CATCH bytecode to extract JS object from Trowable so any exception that happens during this process will be handled properly. 2003-06-29 22:12:48 +00:00
igor%mir2.org fb888bfa6d Cosmetics: removal of unused import 2003-06-29 21:58:01 +00:00
brendan%mozilla.org dc0997645e Argh, inverted logic bug. 2003-06-28 00:55:12 +00:00
brendan%mozilla.org cd10d7379a Try to fix IRIX port bustage. 2003-06-28 00:09:25 +00:00
pschwartau%netscape.com ac8601882a Adding 2 more sections. 2003-06-20 21:10:24 +00:00
pschwartau%netscape.com b95c881f25 Improving comments. 2003-06-20 05:27:38 +00:00
pschwartau%netscape.com 2defcbbf00 Adding 2 more sections, and an explanation for the matches by Waldemar. 2003-06-20 05:23:06 +00:00
pschwartau%netscape.com 5022c55256 Improving comments. 2003-06-20 04:56:50 +00:00
pschwartau%netscape.com ff2d59926f Improving comments. 2003-06-20 04:55:00 +00:00
dbradley%netscape.com a707453fac Bug 205586 - IDispatch should convert VT_EMPTY as JSVAL_VOID and VT_NULL as JSVAL_NULL. r=adamlock, sr=alecf 2003-06-20 04:12:26 +00:00
dbradley%netscape.com be1bbff87b Bug 204765 - Parameterized properties expression don't return the assigned value. r=adamlock, sr=alecf 2003-06-20 04:10:15 +00:00
dbradley%netscape.com c0f226a3f6 Bug 204894 - Implement GeckoActiveXObject.supports(clsid). r=dbradley, sr=alecf 2003-06-20 04:08:17 +00:00
pschwartau%netscape.com 709007b8c7 Correcting test per Waldemar at bug 209919 comment 11. 2003-06-20 00:40:01 +00:00
pschwartau%netscape.com a14f61fcf1 Initial add. Regression test for bug 209919. 2003-06-19 21:26:19 +00:00
brendan%mozilla.org aad539534d Try to fix OSF1 (TRU64). 2003-06-19 04:43:23 +00:00
brendan%mozilla.org 1452f61cd3 Try to fix OSF1 (TRU64). 2003-06-19 00:47:31 +00:00
pschwartau%netscape.com d576c58ab8 Adding a carriage return at end of file. 2003-06-17 21:32:48 +00:00
dbradley%netscape.com c3ae11e4f3 bug 203797 - IDispatch support should allow FUNC_VIRTUAL and FUNC_PUREVIRTUAL. r=adamloc, sr=alecf 2003-06-16 14:38:15 +00:00
brendan%mozilla.org fb86f234b3 Hack out ports that don't offer setenv. 2003-06-14 06:10:04 +00:00
pschwartau%netscape.com 14d3981673 Moving all catch guard tests from the ecma_3/Exceptions directory to the js1_5/Exceptions directory, since this is non-ECMA syntax. 2003-06-14 01:16:36 +00:00
brendan%mozilla.org bf5adecf6e Try to fix HPUX bustage. 2003-06-14 00:10:09 +00:00
brendan%mozilla.org 0c4187f6a0 Need jsconfig.h and #if JS_HAS_XDR...#endif around guts of file (208586, r=pschwartau). 2003-06-13 23:58:36 +00:00
brendan%mozilla.org e159ed82ec - Add an environment object, to reflect the shell's environment variables.
- Cleaned up command line argument processing so the arguments object is
  available to all scripts (-f foo.js or the final bar.js non-option arg).
  Also made - work in all cases (-f - or - as the final arg) to mean stdin.
- Miscellaneous formatting and style cleanup.
2003-06-13 21:25:10 +00:00
pschwartau%netscape.com 48b4ad20f0 Improving readability. 2003-06-13 18:09:45 +00:00
pschwartau%netscape.com c058b21aef Improving readability. 2003-06-13 01:18:18 +00:00
pschwartau%netscape.com e9bf863532 Initial add. Regression test for bug 209067.js 2003-06-12 23:07:27 +00:00
brendan%mozilla.org 5ab6026cea Oops, this should have been checked in as part of the bug 208586 landing. 2003-06-12 00:26:40 +00:00
brendan%mozilla.org 2c4474523d More resolve cleanup: eliminate cx->resolving (redundant w.r.t. cx->resolvingTable && cx->resolvingTable->entryCount); use JS_DHASH_ADD and test for non-null key part, not LOOKUP-and-test-non-busy-then-ADD. 2003-06-11 23:43:56 +00:00
igor%mir2.org 6434e11894 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=208293 :
Patch from Steve Beal to fix my bug in Context.readReader.
2003-06-11 13:27:23 +00:00
igor%mir2.org 7e7475f7b5 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=207999 :
EcmaError constructor now takes a generic Scriptable and not NativeError so classes outside org.mozilla.javascript can use it.
2003-06-11 07:36:11 +00:00
igor%mir2.org 64c08e0506 Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=207968 :
As suggested by Roland Knight, WrappedException does not call exception.fillInStackTrace() to prevent hiding of the original stack trace.
2003-06-11 07:33:22 +00:00
seawood%netscape.com 8f112a4226 Removing old cfm build files. Use the CFM_LAST_RITES tag to resurrect. r=macdev 2003-06-10 21:18:27 +00:00
seawood%netscape.com 6934dc37a9 Removing old cfm build files. Use the CFM_LAST_RITES tag to resurrect. r=macdev 2003-06-10 20:12:33 +00:00
pschwartau%netscape.com 8ce5df2afe Initial add. Regression test for bug 208496. 2003-06-09 21:01:09 +00:00
pschwartau%netscape.com ae8580fda8 Removing in order to rename test as regress-208496-001.js 2003-06-09 21:00:02 +00:00
brendan%mozilla.org ef5ca30389 Subtly better comment for last change. 2003-06-08 20:31:06 +00:00
brendan%mozilla.org 065785a168 Followup fix to remaining problem pointed out by Itaj Sherman (208496). 2003-06-08 18:55:53 +00:00
brendan%mozilla.org a0cac9ffd2 Slight comment tweaks to last checkin. 2003-06-07 21:31:00 +00:00
brendan%mozilla.org 47202fbc9f Minimal ECMA-262 Edition 3 config, plus cleanup to other configs (208586, r=shaver). 2003-06-07 21:08:45 +00:00
brendan%mozilla.org 140409a0be Hide arg and var properties of function objects from with statements (208496, r=rogerl). 2003-06-06 21:43:14 +00:00
pschwartau%netscape.com 11cc45c7e2 Making sections 5 and 6 a little sharper. 2003-06-06 20:55:38 +00:00
brendan%mozilla.org 69d0305580 Canonical forever loops. 2003-06-06 19:00:40 +00:00
pschwartau%netscape.com ba20d8ceda Adding more cases to the test. 2003-06-06 18:34:49 +00:00
pschwartau%netscape.com 63f73af1d5 Initialize the |actual| variable so it doesn't hold |undefined|. 2003-06-06 00:02:30 +00:00
pschwartau%netscape.com 9fea87c5fb Initial add. Regression test for bug 208496. 2003-06-05 23:54:44 +00:00
brendan%mozilla.org 633d19bfa2 Unify on JS_DHASH_ADD to avoid gratuitous lookup-before-add in cx->resolvingTable (r=me again). 2003-06-05 18:49:13 +00:00
dbradley%netscape.com b71330292a Bug 205768 - Enumeration of wrapped IDispatch objects is broken. r=adamlock, sr=alecf. 2003-06-05 11:57:03 +00:00
brendan%mozilla.org 70fc60a896 One more self-reviewed speedup nitpick. 2003-06-04 02:29:02 +00:00
brendan%mozilla.org 19244b78c7 Unify double/{hi,lo} union to fix bad ifdef'ing for ARM in jsnum.c (208048, r=rogerl). 2003-06-04 00:12:18 +00:00
brendan%mozilla.org 97e15f1f64 Remove useless and redundant code from a few places in the *SWITCH generator (r=self). 2003-06-03 04:29:30 +00:00
brendan%mozilla.org e0a133edd2 64-bit portability fix from Thomas Moestl <t.moestl@tu-bs.de> (207673, r=me). 2003-06-02 19:04:36 +00:00
igor%mir2.org 228ed52ca0 To store properties, replace UintMap by a linked list. The former creates 2 objects (UintMap itself and int array) to store int properties and 3 objects (additional object array) to store object properties but vast majority of Nodes has no more then 2 properties with single-property-node contributing most to the majority. 2003-06-02 06:35:57 +00:00
brendan%mozilla.org d09b84b2b8 Disable DEBUG_brendan stuff. 2003-05-30 20:25:42 +00:00
brendan%mozilla.org 0f0aa3da9c Constipation and comment spelling fixes. 2003-05-30 20:23:59 +00:00
pschwartau%netscape.com b5da481b47 Updating JS_GetImplementationVersion() to date of latest JS release (67111). 2003-05-30 00:10:38 +00:00
timeless%mozdev.org 4f0c018e60 Bug 207327 @mozilla.org/js/jsd/app-start-observer;2 isn't registering itself correctly as an app-startup observer service
r=rginda
2003-05-28 22:34:20 +00:00
dbradley%netscape.com 7f6d631dec Bug 163018 - This patch fixes some problems the original patch created when building SpiderMonkey. This basically renames LIB to LIBDIR because of the conflict with the compiler's use of LIB. r=cls, sr=brendan 2003-05-27 14:46:21 +00:00
timeless%mozdev.org 281a512cce Bug 205523 `java_wrapper_obj' might be used uninitialized in jsj_WrapJSObject
r=beard sr=dmose
2003-05-23 22:14:15 +00:00
timeless%mozdev.org e32e0a74a0 Bug 205247 warning: `JSBool ReportOutOfMemory(class XPCCallContext &)' defined but not used
r=dbradley sr=dmose
2003-05-23 22:06:27 +00:00
brendan%mozilla.org 143b76d4b4 White space cleanup. 2003-05-21 23:15:12 +00:00
igor%mir2.org 413322eb2a Pass IRFactory to Parser.parse instead of Parser constructor so Parser initialization would not require IRFactory which needs Interpreter in turn . 2003-05-21 12:09:08 +00:00
igor%mir2.org 60d7e7b824 Layout cosmetics 2003-05-21 11:48:32 +00:00
brendan%mozilla.org e26842004b Remove ancient include of jshash.h, no longer needed since the double hashing and property tree changes went in. 2003-05-21 02:20:59 +00:00
igor%mir2.org 66d047350d Added WrapFactory.wrapAsJavaObject to simplify customization of LiveConnect 2003-05-20 12:46:09 +00:00
igor%mir2.org 8368c94269 Adding missed final qualifier to the declaration of js_NaN_date_str field 2003-05-20 08:10:48 +00:00
brendan%mozilla.org 37fd837877 Comment and 80th column violation tweaks. 2003-05-19 22:01:57 +00:00
igor%mir2.org c6db00699d Addition of seal function to Rhino shell to seal all supplied arguments. 2003-05-19 15:53:23 +00:00
brendan%mozilla.org af5d241272 Out of date comment fixed. 2003-05-17 22:34:09 +00:00
igor%mir2.org 335b23c60e Resolving http://bugzilla.mozilla.org/show_bug.cgi?id=203013 :
Changing behavior of sealed objects to throw an exception on any attempt to modify them including changing values of existing properties. In the same time making object sealed does not affect read-only status of its properties which allows to override properties of objects with a sealed object as a prototype.

Rhino shell now accepts -sealedlib option to seal all standard objects.
2003-05-16 14:25:57 +00:00
igor%mir2.org 8795bde8a6 Optimizations in NativeDate mostly to reduce amount of various format strings runtime has to initialize. 2003-05-16 08:32:58 +00:00
timeless%mozdev.org 36a8750b08 Bug 163018 Fix support for lib64 & x86-64 architectures
patch by gbeauchesne@mandrakesoft.com r=shaver a=asa
2003-05-16 00:21:08 +00:00
dbradley%netscape.com 06f5f7a158 Additional XPConnect test cases for IDispatch. (Not part of the build) 2003-05-15 21:16:27 +00:00
igor%mir2.org 5c174e00c9 NativeObject is split into NativeObject and NativeObjectPrototype subclass not to have prototypeFlag field in each and every object instance. 2003-05-15 13:12:41 +00:00
igor%mir2.org 3a4259f580 Resolving http://bugzilla.mozilla.org/show_bug.cgi?id=205661 :
In setBySetter when start != this setters with delegators and setters without one if start is not an instance of this class are not invoked on start. Instead the standard JS rules applies so x.a = 1 would not change a in x.__proto__ if a in x.__proto__ is controlled by setter.
2003-05-15 07:29:46 +00:00
brendan%mozilla.org d329c0b4f0 Fix ancient ECMA conformance bug to-do with implicit variable definition order in assignments (204919, r=rogerl, a=asa). 2003-05-14 20:57:47 +00:00
igor%mir2.org 83a3ee7978 In getByGetter/setBySetter with slot.delegateTo avoid potentially expensive checks for start type if this == start. 2003-05-14 14:51:00 +00:00
igor%mir2.org d61a682a8d Changing JavaAdapter not to define JavaAdapter.prototype since new JavaAdapter create JS objects with __proto__ pointing to Object.prototype. It removes the need to extend from ScriptableObject in JavaAdapter and effectively makes it a collection of static methods.
To implement JavaAdapter JS call I used JIFunction subclass so the method implementing this functionality can be package private.
2003-05-14 12:44:24 +00:00
igor%mir2.org 2db5b5aa69 More layout fixes and renames to make the following commit smaller. 2003-05-14 09:45:59 +00:00
igor%mir2.org b48900f554 In jsConstructor catch reflection exceptions and rethrow them as WrappedException not to create InvocationTargetException proxy that will be converted to WrappedException by the runtime in any case. 2003-05-14 09:37:39 +00:00
igor%mir2.org 6e8c35eed6 Removal of overridden equals that simply calls super.equals since JavaAdapter does not need to define the method for ScriptableObject.defineClass to work and layout cosmetics. 2003-05-14 06:24:00 +00:00
igor%mir2.org 49a339a54b Replace catch for various exceptions that reflection methods can throw by single catch (Exception ex) to have smaller code. 2003-05-13 10:07:44 +00:00
igor%mir2.org 4249f507ee Fixing http://bugzilla.mozilla.org/show_bug.cgi?id=205297 2003-05-12 16:54:41 +00:00
dbradley%netscape.com efd336ee4d bug 204659 - Security manager check needs adjusting. r=adamlock, sr=alecf, a=sspitzer 2003-05-10 04:10:29 +00:00
brendan%mozilla.org 0e2973f59e Fix overbroad getter/setter access check to apply only to scripted getters/setters; fix wrong object class name in error messages (198660, r=mstoltz, sr=jst, a=asa). 2003-05-09 00:40:50 +00:00
pschwartau%netscape.com a9334f6bcc Oops, I accidentally had section 2 of the test commented out! Uncommenting it now - 2003-05-08 21:19:09 +00:00
pschwartau%netscape.com a373e735bf Initial add. Tests ECMA-262 Ed. 3 Section 11.13.1, and is a regression test for bug 204919. 2003-05-08 21:08:19 +00:00