Commit Graph

262 Commits

Author SHA1 Message Date
shaver
4fe59b0a91 support int JSVALs in XDRValue (duh) 1998-07-13 16:12:41 +00:00
mccabe
748a690fa2 Added newline in 2nd comment to make the LXR indexer slightly happier.
Thanks to Dawn Endico <dawn@cannibal.mi.org> for LXR hacking.
1998-07-10 02:13:17 +00:00
mccabe
0d458b9d77 Changed the definition of JSDOUBLE_IS_INT(d, i) to delay a (jsint)d
cast until after the double in question has been determined to be
finite, not NaN, etc.  This may make the code a little more XP for
platforms like BSD and Alpha Linux that don't like casting strange
values to int.  Thanks go to Uncle George <gatgul@voicenet.com> and
hankin <hankin@consultco.com> for their porting work.
1998-07-08 07:56:43 +00:00
mccabe
284d1c6f30 Made the assign hack conditional on JSVERSION_IS_ECMA. 1998-07-07 23:59:45 +00:00
shaver
be9d53fcab tentative and likely useless script verifier for XDR (-DJS_XDR_SCRIPT_VERIFIER) 1998-07-04 19:45:46 +00:00
fur
1c64bf7ca6 These files were moved to js/ref/liveconnect/macbuild/JavaSession. 1998-07-03 19:00:59 +00:00
fur
6d818b7095 + Fixed heap corruption caused by free'ing of an uninitialized pointer.
+ Changed the way JS wrapper functions for Java instance methods are constructed.

  Previously, these were computed the first time that an instance method was
  accessed for a particular JavaObject and cached in the native, private portion
  of that JavaObject.  However, the required call to JS_AddRoot() causes an root
  to appear as a link in a cyclical graph, leading to uncollectible objects, i.e.
  the JavaObject has a root pointer to the function object and the function has
  a parent that points back to the JavaObject.  Now, we compute the functions
  at the time a class is reflected and use JS_CloneFunctionObject() each time
  a JS wrapper function is needed, which is slower, but avoids this GC problem.
1998-07-03 15:50:16 +00:00
fur
00108b9f51 Tweaked comment. 1998-07-03 02:43:34 +00:00
fur
f3814769e7 Fix Win32 warnings that were introduced as a result of curing Mac warnings. 1998-07-03 02:42:16 +00:00
fur
4a2e6cfaaf Got rid of debug printf(). 1998-07-03 02:41:31 +00:00
fur
330b4a6f8e Added Compatibility discussion.
Tweaked Mac build instructions.
1998-07-03 02:40:48 +00:00
fur
0d6b7f4c5f Fixed incorect argument type in jlong_to_jdouble() which was causing Java long values to get mangled. 1998-07-03 00:00:15 +00:00
fur
7e5dbbafb6 Use Types.h instead of more modern MacTypes.h so that we can build with CodeWarrior 2 on the Mac. 1998-07-02 04:11:53 +00:00
montulli
baa6d6585c merge montulli1 branch with tip 1998-07-02 02:39:54 +00:00
beard
14d7539139 Fixed unintended assignment warning in lookup_member_by_id. 1998-07-01 18:58:29 +00:00
beard
8f133a80c6 Fixed unintended assignment warning in access_java_array_element. 1998-07-01 18:55:49 +00:00
beard
6989e9ce94 Added prototype for jsj_ConvertJavaStringToJSString. 1998-07-01 18:48:12 +00:00
beard
b0adf38f64 enter_js now static, since it had no external prototype. 1998-07-01 18:47:26 +00:00
beard
9e5e0d2d68 define_JavaPackage now static since it had no external prototype. 1998-07-01 18:46:23 +00:00
beard
4b456772a7 JavaObject_getObjectOps now static since it had no external prototype. 1998-07-01 18:45:32 +00:00
beard
fe61d4682c JavaClass_getObjectOps, jsj_new_JavaClass now static, since they had no external prototypes anyway. 1998-07-01 18:44:50 +00:00
beard
111e7ffc34 Made JavaArray_getObjectOps static to fix no prototype warning. 1998-07-01 18:43:16 +00:00
beard
1cc4de3558 Fixed unintended assignment warnings, made default_map_java_object_to_js_object static to fix no prototype warning. 1998-07-01 18:42:27 +00:00
beard
d0534b637a Removed some dead code. 1998-07-01 18:37:43 +00:00
fur
1bb1ec2907 If the same JSObject is reflected into Java more than once then we should
return the same Java object, both for efficiency and so that the '=='
operator works as expected in Java when comparing two JSObjects.
However, it is not possible to hold a reference to a Java object without
inhibiting GC of that object, at least not in a way that is portable
to all vendor's JVMs, i.e. a weak reference. So, for now, JSObject identity
is broken.
1998-07-01 06:11:39 +00:00
fur
906b904d7a Added equals() method to override java.lang.Object.equals(). This is
necessary because the '==' operator won't work with LC2.
1998-07-01 06:00:10 +00:00
brendan
733ea0c9f5 - Remove duplicate error fprintf from js.c:Load.
- Revise exception handling runtime info (now called trynotes a la srcnotes)
  for more efficient loop control under JSOP_THROW.  Avoid all uses of catch
  and throw while at it, to make C++ lusers happy.
- Combine JSStackFrame.exception with rval, and rename
  JSStackFrame.exceptPending to be ...throwing.
- Optimize JS_TypeOfValue a bit.
- Name, control flow, whitespace, etc. cleanup.
1998-07-01 02:12:45 +00:00
beard
5cae9cf967 Changed jsj_HashJavaObject to conform to JSJHashFunction. 1998-07-01 00:21:18 +00:00
beard
3237061bc8 #defined PR_IMPLEMENT for XP_MAC/XP_UNIX cases. 1998-06-30 22:18:23 +00:00
beard
ed37469a20 Fixed JSVAL_TO_JLONG_JVALUE macro for XP_MAC -- can't assign 0 directly to a jlong. 1998-06-30 22:17:19 +00:00
beard
e1acf242ee Added jsj_hash.c, turned on debugging by default. 1998-06-30 22:15:38 +00:00
fur
e9e7749b27 = Replicate the JS engine machinery that gives the appearance of converting
all element access expressions to strings, e.g. so that obj["3"] and
  obj[3] refer to the same property for a JavaArray object.

= Return false when using 'delete' operator on JavaArray objects.
1998-06-30 18:18:03 +00:00
fur
bca1b5126d Return false when using the 'delete' operator on JavaClass or JavaObject objects. 1998-06-30 18:10:14 +00:00
fur
4feb603992 Eliminated the last uses of the JNIEnv global variable. Unfortunately, this
means that we had to switch from using NSPR hash tables to a private version.
The new jsj_hash.c file is derived from plhash.c, but it provides for an additional
argument to be passed to the hash key comparison function.  This capability
is used to pass in the JNIEnv pointer.

On shutdown, LiveConnect now removes all references to Java objects and classes,
so that the JVM might be able to GC them.
1998-06-30 10:04:32 +00:00
norris
7290174189 (Not part of Communicator build.)
fur's fix for repeating properties in enumeration bug.
1998-06-29 22:01:22 +00:00
norris
98f610114f (Not part of Communicator build.)
Handle NaNs better for non-PC platforms as well.
1998-06-29 22:00:11 +00:00
fur
3b5246d547 Aggressively track and release JNI local references to constructed
Java objects, because otherwise at least one JVM is reticent about
GC'ing them.
1998-06-28 07:53:04 +00:00
fur
4f4552540c = Force result to zero when converting JS NaN to Java integral types.
= Aggressively track and release JNI local references to constructed
  Java objects, because otherwise at least one JVM is reticent about
  GC'ing them.
1998-06-28 07:52:23 +00:00
fur
1a53251e00 Added toString() method for JavaPackage objects. 1998-06-28 07:51:27 +00:00
fur
20e42dfcd9 Property deletion should be silent for ECMA-conformant versions of JS. 1998-06-28 07:50:47 +00:00
fur
9b0324a6af Property deletion should be silent for ECMA-conformant versions of JS. 1998-06-28 07:39:58 +00:00
beard
f2facc58ec Added code that guarantees MRJ will be shutdown when the program exits. 1998-06-27 18:24:26 +00:00
fur
7d5c31a853 Tweaked error messages and comments. 1998-06-26 06:46:15 +00:00
fur
f30274d34b Store overloaded methods in the same order as they arrive from the JVM, so
that overloaded method resolution works the same as before, although probably
only with the Sun JVM, because this order isn't specified anywhere.
1998-06-26 06:45:04 +00:00
fur
dccdac01c8 When running in ECMA-compatibility mode, silently ignore attempts to delete
properties of JavaArray objects.
1998-06-26 05:44:02 +00:00
mccabe
c7340ec4e6 (Not part of the client build.)
Parenthesized assignment-in-conditional to quiet gcc compiler warning.
1998-06-25 18:36:53 +00:00
mccabe
ce49fb6841 Extend #ifdef SHELL_HACK from recent fix to 187538 (mistakenly 187537)
to avoid compiler warning on defined-but-unused 'Exec'.
1998-06-25 18:34:13 +00:00
norris
7176fc63e1 (Not part of Communicator build.)
Fix GC bug involving load().
1998-06-25 15:56:19 +00:00
spider
cb94dae31e NORMANDY_DDAY merge... 1998-06-25 05:50:45 +00:00
mccabe
7553565194 Fix to 187537. The 'assign' hack was interacting with the 'shell
command' hack - the resolver defined by js.c would get called to look
up 'assign' - and on Irix systems, it would find the 'assign' command
in the current path, and decide to define a function called 'assign'
in the global object that would run the assign command.  Then when an
attempt was made to assign a property to the global object, the assign
command would get run, and unexpected behavior followed.
1998-06-25 02:07:13 +00:00
fur
2dc7ca8700 Conversion to a primitive now results in a string value, even with a
hint of JSTYPE_NUMBER.  This is a case that nobody cares about, but it's
used in a LiveConnect test case.

Added more registered Java packages for reduced server-roundtrips.  Also,
loosened restrictions on accessing unregistered packages under "java" and
some of the other packages, in case Sun or somebody adds a "java.fooBar"
package.
1998-06-24 05:47:46 +00:00
fur
7299ccee3d Allow closures when the JS version is JSVERSION_DEFAULT. 1998-06-24 05:37:44 +00:00
fur
107042b6e2 Fix bug in which leaving the JS version as JSVERSION_DEFAULT would return
all enumerated property names as strings, as was the case in JS1.1, instead
of the modern (>=JS1.2) behavior of allowing either string or integer property
names.
1998-06-24 05:36:46 +00:00
fur
fe558e38b1 Ignore generated files 1998-06-24 03:18:48 +00:00
fur
4b16c6c9b3 Files moved to liveconnect/macbuild subdir 1998-06-24 03:09:57 +00:00
beard
7980119fd9 Updated Mac build instructions. 1998-06-24 02:44:30 +00:00
beard
d9cfd25007 Turned off LIVECONNECT for default case. 1998-06-24 02:25:36 +00:00
beard
34a5003453 Made JavaSession stuff conditional on LIVECONNECT. 1998-06-24 02:24:58 +00:00
beard
2ea1c49ef3 First Checked In. 1998-06-24 02:20:45 +00:00
beard
9fb7d1cfd6 builds standalone JS shell, without LiveConnect. 1998-06-24 02:15:02 +00:00
norris
45b1f46a82 (Not part of Communicator build)
Fix warning for unspecified prototype.
1998-06-23 23:28:36 +00:00
fur
594df93250 Allow NULL name argument for JS_NewFunction() 1998-06-23 22:40:24 +00:00
fur
974947c4ce Print java error messages even when netscape.javascript classes
are not accessible.
1998-06-23 21:11:37 +00:00
norris
b0e98631f4 (Not part of Communicator build)
Fix 111202 ECMA: division and modulo operator special cases (/ %)
Another instance of the MSVC NaN == 0 bug.
1998-06-23 20:53:12 +00:00
norris
fd2d85d3df (Not part of Communicator build.)
Fix array length updating for negative indices.
1998-06-23 18:20:59 +00:00
norris
4d76152498 (Not part of Communicator build)
Fix 105721 ECMA: assigning String.prototype.indexOf to the global object
1998-06-23 18:16:02 +00:00
fur
c075b19207 Prevent crash when accessing numeric properties of a JavaPackage
object.  (Such properties should never exist, but we shouldn't crash.)
1998-06-23 08:15:40 +00:00
fur
005b7a2045 Simplifications and aesthetic tweaks to changes required to build on the Mac.
Also, eliminated uses of tab characters.
1998-06-23 06:28:14 +00:00
fur
9c8206d34b Ignore generated files 1998-06-23 06:09:44 +00:00
mlm
ca4706a898 - Merge with 4.06 sources: Add another byte to source numbering so that
scripts that start on lines >32K still work.
- Fix is from fur
1998-06-23 02:32:45 +00:00
beard
9e99fd8b00 First Checked In. 1998-06-23 02:05:14 +00:00
beard
de9e08f412 Added prototype for strdup. 1998-06-23 02:04:48 +00:00
beard
be75153fe0 #define LIVECONNECT 1 1998-06-23 02:04:22 +00:00
beard
df22104edb Added prosdep.h to get strdup prototype. 1998-06-23 02:03:59 +00:00
beard
6be3eb992d Added XP_MAC changes to export the JSObject native methods. 1998-06-23 02:03:10 +00:00
beard
5afc929f9d Added XP_MAC changes for struct-based jlongs. 1998-06-23 02:01:53 +00:00
beard
129adcc229 Added prosdep.h to get strdup prototype. Corrected JSJ_InitJSContext to match its prototype. 1998-06-23 01:59:26 +00:00
beard
883907e189 MacOS/MSL malloc also needs non-zero size. 1998-06-23 01:57:05 +00:00
beard
8506dd7f3a Added XP_MAC initialization function. 1998-06-23 01:55:31 +00:00
beard
9adfde6a23 Added Mac build instructions. 1998-06-23 01:54:20 +00:00
beard
0d6134c989 First Checked In. 1998-06-23 01:48:49 +00:00
beard
3c43366f5f First Checked In. 1998-06-23 01:31:44 +00:00
norris
c33b5f5ee5 (Not part of Communicator build.)
Fix crash occurring on most tests, nits from brendan code review.
1998-06-22 17:53:05 +00:00
fur
002ea80f8b Minor updates to build instructions and file descriptions 1998-06-22 17:41:18 +00:00
fur
6699e308bb [Not used for Mozilla builds]
These project files were just checked in temporarily and are replaced by the
LiveConnectShell project files located in the js/ref/liveconnect subdirectory.
1998-06-22 17:28:12 +00:00
fur
568e38aca4 [Doesn't build with mozilla]
Java files associated with new LiveConnect.
1998-06-22 17:23:57 +00:00
fur
c6c68e26aa Added the getClass() method for backward-compatibility with old LiveConnect. 1998-06-21 06:51:27 +00:00
fur
2e70b63717 Removed all ifdef NO_JSOBJECTOPS code. This was older code that used the
"classic" JSAPI, rather than the new, faster JSObjectOps API.
1998-06-21 05:17:15 +00:00
fur
d5b0774f7c [Not in the mozilla build]
This new vendor-neutral version of LiveConnect is designed to replace the older
one in the js/jsj directory, which only works with the Netscape JVM.  It is part
of the OJI initiative.
1998-06-20 17:46:42 +00:00
mccabe
54e0d585a2 ECMA (sort of) fix to 156615, platform-dependent troubles on Solaris.
There was a check in our mini-nspr against asking the OS time services
what the DST offset was for time 0... but the check didn't do what the
comment said it did.  So we got the wrong DST offset for... (drum roll
please) the two seconds on either side of the eve of 1970 GMT.

I have a similar fix ready for prmjtime.c, but I'll wait until the
stability freeze settles down.
1998-06-20 01:21:01 +00:00
norris
16d06a5647 (Not part of Communicator build.)
Add implementation version API call.
1998-06-19 23:47:07 +00:00
norris
dc578c90c0 (Not part of Communicator build.)
Fix 153640 monkey crash calling Math as function or constructor
Just added a null pointer check
1998-06-19 22:21:36 +00:00
norris
eafb2d2e3a (Not part of Communicator build.)
Fix 123724 hippo: problems declaring var in an eval statement
This ended up being more complex than I initially thought it would be.
See comments in jsparse.c.
1998-06-19 21:52:14 +00:00
mlm
16c4667970 Merge Win16 "fixes" from Dogbert4xDevelopment_BRANCH
- Reorder identical code
 - Move scope of local variable
 - ifdef out stderr
1998-06-19 20:13:15 +00:00
norris
389e7da848 (Not part of Communicator build.)
Change C++ keyword "catch" (and Java keyword "finally" for good measure)
to other identifiers to help out embedders calling JS from C++.
1998-06-18 23:43:51 +00:00
norris
4a7ce61340 (Not part of Communicator build.)
More functionality for debug print functions.
1998-06-18 00:13:08 +00:00
norris
18a4346991 (Not part of Communicator build.)
This comment is for checkin of version 1.8: mistakenly gave wrong comment
for that version.
Fix 123724 hippo: problems declaring var in an eval statement
The problem was that Variable() in jsparse.c used the scope from calling
js_FindVariableScope to determine whether or not to convert the operator
to GETVAR, but LookupArgOrVar did not. This caused a mismatched set and
get in the code generated from the eval script due to the presence of the
var in the function frame.
1998-06-18 00:11:51 +00:00
norris
a004313509 (Not part of Communicator build.)
More functionality for debug print functions.
1998-06-18 00:04:38 +00:00
brendan
927c39b448 - Fix function in with statement to form a closure with the right scope chain
on activation (120172, mlm).
- Use #ifdef CHECK_RETURN_EXPR to hide CheckFinalReturn as well as its calls.
- 80th column tyranny, typedef symmetry, other cosmetics.
1998-06-17 19:37:53 +00:00
mccabe
ce9c2ffb45 (Not part of the mozilla build)
Added a guard against casting infinity->int, towards porting to alpha linux.
1998-06-17 19:36:29 +00:00
norris
878cbe9517 (Not part of Communicator build.)
Fix warning messages for lack of function prototype.
1998-06-17 16:23:29 +00:00
norris
94b9b8fc0e (Not part of Communicator build)
Add ability for scripts to access their arguments.
1998-06-16 23:10:57 +00:00
norris
45dbeb0589 (Not part of Communicator build.)
Fix 129824 monkey: evaling a function with many arguments fails
1998-06-16 18:36:57 +00:00
mccabe
c5c964116c Undid the ECMA fix that disallowed '08' and '09' numeric literals. According to the ECMA lexical grammar, these literals should be scanned as two consecutive NUMBER tokens ('0' and '9') - which is always a syntax error under the grammar. Unfortunately, the javascript engine has supported these literals (with mathematical values 8 and 9) in the past, and they're likely to crop up in date code... so we probably need to remove this fix. This leaves us a superset of ECMA - by accepting these literals, we accept scripts that are not valid ECMA scripts. 1998-06-13 01:10:30 +00:00
norris
d1da694218 (Not part of Communicator build.)
Tweak last fix not to depend on size of char.
1998-06-12 22:20:06 +00:00
norris
3aa9bf7b95 (Not part of Communicator build.)
Fix bug 123802 hippo / js1.2 some regular expression tests fail
1998-06-12 22:17:13 +00:00
norris
25c1c4801f (Not part of Communicator build.)
Fix 111199 ECMA: don't enumerate parseInt.length
1998-06-12 17:22:04 +00:00
mccabe
f17121ba33 (Not part of the gromit/mozilla build.)
Added NPL notice.
1998-06-12 00:54:15 +00:00
norris
cd9ff2531d (Not part of Communicator build.)
Fix 123552 Array length updating is incorrect
1998-06-12 00:10:52 +00:00
norris
ef4d653b2f (Not build as part of Communicator)
Fix 123788 test crashes spidermonkey: simple null pointer check
1998-06-12 00:09:08 +00:00
waldemar
5a99338f59 Fixed compiler warning 1998-06-11 20:27:22 +00:00
waldemar
d101f134c6 Fixed bugs 123565, 123874, 122877, 122882, 123560, and 77391, all having to do with various errors in reading integers and floating-point numbers and interpreting whitespace around them. Whitespace was being treated inconsistently in parseInt, parseFloat, and ToNumber; made all of these accept any Unicode whitespace in anticipation of the future ECMA v2. 1998-06-10 21:18:05 +00:00
waldemar
aba6fd1d39 Changed js_strtod and js_strtointeger APIs to fix bugs 123565, 123874, 122877, 122882, 123560, and 77391. Added comments. 1998-06-10 21:14:41 +00:00
waldemar
ca71c238b1 Updated for changed js_strtod and js_strtointeger APIs needed to fix bugs 123565, 123874, 122877, 122882, 123560, and 77391. 1998-06-10 21:13:52 +00:00
waldemar
dc2efa678e Added js_SkipWhiteSpace. 1998-06-10 21:11:00 +00:00
shaver
29f04506ff added JS_YieldRequest to API 1998-06-09 21:24:14 +00:00
shaver
debf3ff999 first arg to Script.prototype.exec is scopeobj, not second-with-ignored-first 1998-06-09 17:28:41 +00:00
norris
0565e32750 Fix 123552 Array length updating is incorrect
js> a = new Array()

js> a["3.00"] = "three"
three
js> a.length
4

Since "3.00" is not an array index as defined by ECMA, a.length should be 0.
1998-06-09 16:47:00 +00:00
norris
864c2c19a9 Fix bug 104191 "ECMA: multiple params w/ same name":
Decompiling "function f(a,b,a) { ... }" would only print two parameters.
1998-06-08 23:41:54 +00:00
mccabe
35af634eff ECMA fix to bug (93557). When excecuting the Function constructor,
treat all the 'arguments arguments' as if they were concatenated
together as a comma-separated list, and treat the list as if it were
the arguments list in a normal function declaration.  That is, allow
comments, arbitrary whitespace, etc.

Fixed by introducing a TokenStream instance in the Function contructor
code.
1998-06-08 19:04:17 +00:00
shaver
1827417a5e added XDR-based compile-and-run examples 1998-06-08 16:16:10 +00:00
fur
baf37945c3 Added jsstddef.h 1998-06-05 17:52:18 +00:00
mccabe
e50bbd58f4 Added a few (JSOp) casts to appease Macintosh compiler workings.
Enums are types!
1998-06-04 00:22:55 +00:00
mccabe
3bb24dc54d Reinstated backed-out changes. 1998-06-03 06:08:21 +00:00
sar
0f5c5f61ce backing out mccabes checkin 1998-06-03 02:30:46 +00:00
mccabe
bd33441b8b Cleanup of parseInt checkin, including comment changes. The code is
now a little more explit about when it expects js strings to be
null-terminated.
1998-06-02 23:21:08 +00:00
waldemar
22bc23f28a Fixed bug 122884 1998-06-02 22:04:31 +00:00
waldemar
1264553b23 Updated comment after new-expression bug fix 1998-06-02 22:03:04 +00:00
waldemar
0b2fd976f5 Fixed bugs 76103 and 122787: parsing of new-expressions 1998-06-02 01:54:31 +00:00
fur
bdb5963d98 JavaScript project file for MSVC5 1998-06-01 16:39:11 +00:00
fur
7c374d0809 Temporary check-in of project files to build LiveConnect-enabled shell 1998-06-01 16:26:13 +00:00
fur
48ee6259d3 Merge several bug fixes from client 4.1 branch 1998-06-01 00:31:59 +00:00
waldemar
1167a288a7 Fixed bug 114508: delete can now delete fields of objects put into scope by with statements 1998-05-27 20:10:13 +00:00
shaver
911b2ac9f2 allow NULL Scripts for JS_NewScriptObject 1998-05-27 14:18:51 +00:00
mccabe
87c32f976f Conditionalized a (jsint) cast to ask JSDOUBLE_IS_NaN first -
hopefully avoiding a SIGPFE on Alpha Linux.  (And others?)
1998-05-27 04:53:37 +00:00
waldemar
1e2922a39d Fixed bug 117404: typeof should return "function" on scripts and regular expressions. 1998-05-26 22:11:00 +00:00
waldemar
37b1e0ef09 Fixed syntax errors 1998-05-26 21:25:41 +00:00
shaver
8f257dc22d actually define the function properties of a script when decoding 1998-05-26 13:25:26 +00:00
shaver
33a0264376 preserve sprop->id across XDR 1998-05-26 12:18:18 +00:00
mccabe
3f3c44a66d Fix to (83996), global parseInt function fails for numbers > 2^31.
It now passes all of the tests in 15.1.2.2-1 (except that parseInt
still has the .length property, which is a different bug) - so I'll
close the bug.

Still possibly at issue is whether we conform to ECMA language about
decimal numbers that are too large to fit in a double.  I treat
decimal digits after the 20th as zero, but there could be some
floating-point rounding wackiness going on.  In particular - are we
doing the right thing for numbers that are powers of 2, but larger
than 2^54, that are representable in a double?
1998-05-21 23:15:24 +00:00
mccabe
ce47f72e5f Removed the escape and unescape functions, as they are now part of the
core engine.  (They've become part of the ECMA spec.)  Fix to (97681).
1998-05-20 03:25:41 +00:00
mccabe
9e50a5d27b ECMA fix to (117144).
Array.prototype.sort(comparefn) was casting the result of the compare
to an int, which lost when the compare function returned (ecma-valid)
strange double values.  These now get clamped to -1, 0, 1.
1998-05-13 23:29:52 +00:00
mccabe
6bd5f56755 Warning fix - added an (int16) cast to quiet a Windows warning. 1998-05-13 22:13:30 +00:00
mccabe
001a0b714c (Not part of the mozilla build process.)
Added support in the javascript shell for the #! unix script hack; if
the first line read by the shell (from a file, not interactive) starts
with #, the line is treated as a comment.

This should make
#!/usr/bin/js work...
1998-05-09 05:54:12 +00:00
mccabe
b3743d8812 Added #if defined ( SNI ) to a few existing #if tests, for compiling
on SINIX.
1998-05-01 07:06:12 +00:00
mccabe
57c82e0ec6 Another place where error reporting hadn't caught up to 16-bit
character strings; added a js_DeflateString call.  Thanks to gcc 2.8.1
for catching this - it complained about "char format, different type
arg (arg 4)" - which means that it looked in the (printf-style) format
string and checked type against it.  Wow.
1998-05-01 01:39:51 +00:00
mccabe
d2e10ec753 Changed pr[mj]time.c to just return 0 for failure in FormatTime, and
changed jsdate.c to detect failure and default to using toString in
place of toLocaleString whenever FormatTime fails.
1998-04-30 03:51:26 +00:00
mccabe
6398680e7f Fixes for getting the timezone string fot toString, and for asking for
a localized string from the os for toLocaleString.  The time struct
used to interface to the os time-formatting functions only takes a
16-bit year, so we map to an equivalent year (for getting the timezone
string) or clamp for years outside that range.
1998-04-30 00:27:43 +00:00
mccabe
b7ca0cd7fd Removed some unused constants. 1998-04-30 00:14:07 +00:00
mccabe
b768c3ff35 ECMA-conformance fix to (95045) - added 'enum' and 'debugger' as
reserved words, and changed the versioning check that previously
applied to 'export' to accept any 'ecma' version... which means that
export becomes a keyword for the default version.  Does this mean
we'll need to unreserve all the java keywords?  Not sure we want to do
that...
1998-04-29 23:57:20 +00:00