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

2040 Коммитов

Автор SHA1 Сообщение Дата
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
spider 365c772ff9 Normandy Merge .... 1998-06-22 21:21:28 +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
fur b8940b6cb4 Propagation of numerous bug fixes from 4.06 (which have been reviewed
and tested in that release):

#114564: Fix JS_Enumerate to return an empty id array instead of null
#115395: Fix JS garbage collection
#115200: Security dialog no longer blows assertion
#123211: Make sure output of sort array function is -1, 0, or 1.
#116195: Fix ImportProperty(), cope with an existing local variable
         of the same name as the imported property
         Unbusticate JS_invoke() so that closures work again
#115384,#115395: Handle bugs in toSource that strike when
         getProperty is non-idempotent.  Fix crash during JavaScript
         garbage collection after enumerating object properties.

#??????: mjudge - Win16 files to make ptrdiff_t be 32 bits on Win16
1998-06-09 23:04:48 +00:00
shaver 7c6a64dcbf added JS_YieldRequest to API (me), and removed assertion in InitClass (mlm) 1998-06-09 21:39:58 +00:00
shaver 29f04506ff added JS_YieldRequest to API 1998-06-09 21:24:14 +00:00
shaver 5b0b04e0e0 first arg to Script.prototype.exec is scopeobj, not second-with-ignored-first 1998-06-09 21:10:45 +00:00
fur c1fc5ee0e8 Replacement for stddef.h in the JS interpreter which defines ptrdiff_t to be 32 bits rather than 16 bits on Win16 only 1998-06-09 21:05:54 +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
sfraser 8842a82e17 Changes to project and prefix files for Mac commercial build 1998-06-03 23:01:03 +00:00
sfraser 02c9dce190 First Checked In. 1998-06-03 23:00:41 +00:00
sfraser 5e29da9c47 First Checked In. 1998-06-03 22:38:01 +00:00
mccabe 3bb24dc54d Reinstated backed-out changes. 1998-06-03 06:08:21 +00:00
mccabe cbd766af27 Hopefully removed the offending jsstddef.h for good. 1998-06-03 03:55:10 +00:00
sar 0f5c5f61ce backing out mccabes checkin 1998-06-03 02:30:46 +00:00
jgellman 9f800f1e0e merge from OJI branch 1998-06-03 00:37:20 +00:00
mccabe 8ae054ff27 Removed reference to jsstddef.h - which got propagated over from
recent changes to js/ref.  We need to fix prconv.sed or check in
src/jsstddef.h!
1998-06-03 00:23:57 +00:00
scc a0d2a32d1d First Checked In. 1998-06-02 23:54:58 +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
sfraser 662fae6ec4 Fix a warning about an uninitialized variable when JAVA is not defined. 1998-05-28 19:39:05 +00:00
sfraser d3e0c7dbf9 Changes for new build system, and unified prefix files. 1998-05-28 19:22:54 +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 26d2cf468b tracking ref fixes: XDR and jsnum 1998-05-27 14:24:39 +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
sfraser 44e9956672 First Checked In. 1998-05-23 01:14:17 +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
matt 1324bd0f27 ifdef include on prosdep. If should not be dependent. Was breaking js/src builds 1998-05-21 22:41:18 +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
brendan 68bbffaa1c Modernize README 1998-05-16 00:55:35 +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 f8b9b7e131 Restoring changes that were backed out because of a one-line error in
prmjtime.c.
1998-05-01 00:22:06 +00:00
hshaw 8a6fd4914b Back out changes which are breaking builds (at request of mccabe) 1998-04-30 08:18:42 +00:00
hshaw 214b354aee Back out changes which are breaking builds (at request of mccabe) 1998-04-30 08:10:05 +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 4a52d1d18e Removed some unused lines related to jsdate.c. 1998-04-30 00:11:31 +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
mccabe 1fa5a6ab37 Fixed error message associated with trying to use a keyword as an
identifier; it was only printing the first character of the
identifier, because it expected 8-bit chars, and was being called with
a 16-bit representation of the offending keyword.
1998-04-29 23:52:40 +00:00
mccabe 225bf8978b Added some #ifdef JAVA guards to remove compile warnings.
Thanks go to rick@spacey.net (Rick Osborne) for finding these.
1998-04-29 02:39:43 +00:00
donm edc67259c4 removing Henrit's jsfile.c and jsfile.h to fix unix build bustage. 1998-04-28 18:00:54 +00:00
donm 57f225d116 backing out Henrit's changes to fix build bustage. 1998-04-28 18:00:00 +00:00
sar 72bba13920 jsfile doesn't compile on unix. Backing out the changes that henrit put it 1998-04-28 17:57:43 +00:00
sar 5046a6f55a reapply henrit's change since we can add it to unix as well. 1998-04-28 17:23:08 +00:00
donm 1927990f6d fixing unix build bustage. 1998-04-28 17:19:14 +00:00
sar bca2161b0f backing out henrit's changes 1998-04-28 17:02:22 +00:00
henrit 41a4919a46 Adding a first version of the js File object. Developped and (slightly) tested on win32 only. 1998-04-28 11:36:17 +00:00
mccabe e91be3ec1f Added public license header. 1998-04-28 07:33:09 +00:00
mccabe e0d493aa9e Propagated some #defines to work with irix 6.3 as well as 6.2.
(HAVE_ALIGNED_DOUBLES)
1998-04-28 06:35:55 +00:00
mccabe f83cd4ee52 Corrected BUILD_OPT oversight where a = instead of a += override the
OPTIMIZER flag in the included config/*.mk file.
1998-04-28 06:06:09 +00:00
mccabe 5c194290ec Added disambiguating braces to appease gcc 2.8.1 warning. 1998-04-28 01:22:19 +00:00
mccabe e3b569eaac Fix to (115008). ECMA fix - revert to earlier behavior of decompiling
functions created with new Function as "function anonymous (...)".
Now only version 1.2 decompiles to the source for an anonymous
function.
1998-04-25 08:37:06 +00:00
mccabe e249717235 Pared down prmjtime.c and prmjtime to just what is needed by jsdate.c
and synchronized them with js/ref/prtime.[ch].
1998-04-25 07:42:22 +00:00
mccabe 18e9d8a4bb Propagate a fix for #ifndef HAVE_LONG_LONG that found its way into src/prmjtime.c but not ref/prtime.c 1998-04-25 05:26:09 +00:00
mccabe 9464bbf93b Add some braces to quiet dangling-else warnings by gcc 2.8.1. 1998-04-25 05:24:42 +00:00
mccabe 43f5474e6a Call JS_GC instead of js_GC within JS_MaybeGC. Thanks to
A. Hodgkinson <ahodgkin@acorn.co.uk> for finding this (and to chouck
for checking it in to js/ref/jsapi.c.)
1998-04-25 05:11:41 +00:00
jband 9280678e1e removing code that is not supposed to be released to the public at this time. This code still lives (for now) under m/src/ns/js/ref/jsd/ on the branch JSFUN13_BRANCH 1998-04-24 22:59:00 +00:00
bjorn fc0b74d9e8 Protection around ASFILES added, so that gcc runs smoothly. 1998-04-24 19:02:01 +00:00
fur 5942cfe7fc When JS_MaybeGC() has decided to do a garbage collection, really do
it, even when the only assignments have been to local JS variables.
Thanks to ahodgkin@acorn.co.uk for noticing.
1998-04-24 18:08:04 +00:00
fur 2f21599e82 Eliminate non-ECMA warnings about lack of return value 1998-04-24 17:56:47 +00:00
fur 9676ba129f Fix numerous cut-and-paste errors in last checkin 1998-04-24 06:57:00 +00:00
fur b905c48b88 Temporarily disable charSet info so we can compile 1998-04-24 06:26:57 +00:00
fur 66a6e223a5 (These files not built by any version of Navigator)
Initial check-in:
JSRef is migrating from /m/src JSFUN13_BRANCH to trunk /m/pub repository
1998-04-24 01:42:37 +00:00
fur 6b433caaaa (This code is not built by any flavor of Navigator)
Initial check-in to mozilla tree: JSRef development is migrating from
JSFUN13_BRANCH of /m/src repository to /m/pub
1998-04-24 01:35:13 +00:00
fur e75cafd1e9 JS1.3 initial check-in 1998-04-24 01:28:40 +00:00
fur ddc67e87cf Initial checkin of JavaScript 1.3, migrated from JSFUN13_BRANCH in /m/src repository 1998-04-24 00:31:11 +00:00
mccabe fb4c567601 Makefile hacking to make 'gmake js' work in ns/js/src. Abstracted a
few constants, added -ldl for Linux.  Tested on Irix 6.3, SunOs 5.6,
Linux 2.031.
1998-04-23 00:39:10 +00:00
briano 5d7ea70ca3 Changed the 'MACLINUX' macro reference to 'MKLINUX'. 1998-04-14 00:00:42 +00:00
ltabb 3b56a9af51 Free the lizard 1998-03-28 02:44:41 +00:00