Prepare for regular expression library.
Silence scan-build warnings about maybe uninitialized variables.
Rename jump to emitjump in compiler.
Fix bug in comment lexing.
Make array length helper public.
Check in auto-generated headers for ease of building.
Prune unused UTF-8 and rune string functions.
Improve jsV_stringtonumber.
Compile pre/post increment/decrement as special opcodes.
Fix boolean equality tests.
Revert "Handle js_tostring on objects without toString or toValue methods."
Never compile scripts as lightweight functions.
Add "jsone" makefile target.
Clean up for one.c compilation.
Fix eval() return value when no arguments are passed.
Handle variable shadowing.
Implement lightweight functions.
Separate generic AST_IDENTIFIER and EXP_IDENTIFIER.
UTF string index/pointer juggling.
Quote strings properly in jsdump.
Simplify string-buffer function API.
Expose magic properties in Object.keys and Object.getOwnPropertyNames.
Add virtual string array index properties for characters.
Make argc/undefined checks more resilient.
Implement ES5 array functions.
Use length property of cfunctions to make sure we have at least N args.
Handle js_tostring on objects without toString or toValue methods.
Implement Function constructor.
Implement extensible object attribute.
Implement ES5 prototype descriptor and misc object functions.
Add decode/encode URI functions.
Use getter/setter also for properties used by the with statement.
Check list of future reserved words for primary expression identifiers.
Add functions to let C bindings define setters and getters.
Rename DontDelete flag to DontConf.
Implement getters and setters.
Compile ES5 getters and setters.
Auto-generate the AST name list.
Check for value stack overflow.
Reset the lastIndex property in String.match() and replace().
Special case handling of regexp source, flags and lastIndex properties.
Encapsulate all regexp state in js_Regexp struct.
Handle global flag in RexExp.exec() and .test().
Fix bug where do/while continue statement jumped to the wrong location.
The typeof operator should return 'function' for callable objects.
Calculate exponent the same way as fractions for symmetry in the lexer.
Abort main.c with return status if a script fails.
Fix typo in CR/LF handling in lexer.
K&R style braces in pretty printer.
Add load() function to main.c
Handle global flag in String.match().
Handle String.replace() when the search matches the empty string.
Use precedence table when pretty-printing syntax.
Add js_pushlstring to avoid a lot of try/malloc/pushstring boilerplate.
Use POSIX regcomp/regexec.
Fix clang scan-build warning.
Add RegExp class (with no actual regex implementation hooked up).
Make the array has/get/setindex functions part of the public API.
Array.sort() using insertion sort.
Maintain order of property enumeration by keeping a linked list.
Let hasproperty push the value of the property on the stack if it exists.
Rename non-js utility sources to not have the 'js' prefix.
Implement substring and slice.
Add some more String functions.
Implement some Array functions.
Guard String.fromCharCode malloc with try/endtry.
Add js_hasproperty function.
Update LICENSE and AUTHORS
Create variables as DontDelete and DontEnum.
Fix off-by-one error in String.fromCharCode().
Add 'own' argument to iterator.
Implement a smarter deletion of properties when resizing an array.
Print a better error message when trying to call a non-function.
Make sure to pop error object when we catch them at the top level dofile call.
Fix bug in case OP_INITPROP_N where we used the value as the key.
Don't look for labels past function borders.
Push result of delete operator.
Create special initializer opcodes for brevity.
Automagically update Array length property.
Refactor property get/set internals.
Move non-standard 'gc' and 'print' global functions into main.c example.