I just spent several hours debugging code in the SilkJS repository that
hasn't been touched in 8 months.
I cloned the repo and built SilkJS for OSX and all works fine.
I cloned the repo on a new Ubuntu VM instance and built SilkJS with V8 and
JavaScript execution is buggy as all get out.
I put console.log() calls in the code to see where it's crashing and the
crash points are random. The code is a language parser. The source it is
parsing is the same every time I run with additional or changed
console.log() statements. If I put in a console.log() to simply echo the
characters being parsed one at a time, the program mysteriously stops for
no apparent reason. It just doesn't echo any more after some number of
characters processed. If I replace the console.log() call with debug()
call and implement function debug(s) { console.log(s); }, then the program
stops for no apparent reason, but after fewer characters processed.
It makes no sense if the JavaScript engine is actually executing the
instructions in the source program.
It appears to me that inspection of objects, using something like for ...
in causes the JavaScript engine to stop executing JavaScript but isn't
crashing. It's not consuming any noticeable CPU, either.
The issue may be related to adding items to the global object. Or adding
to the prototypes of native objects (String, Object, etc.).
I was made aware of the issue when someone else tried to install SilkJS on
a debian VM and ran into the issue. The common theme here is we're both
getting the latest code for v8 from SVN within a couple hours of one
another.
To anyone on the chromium dev team:
Please advise if you see this issue and have fixed it.
--
--
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users
---
You received this message because you are subscribed to the Google Groups
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/groups/opt_out.