The problem here was how we build backtraces now. We pull off a Java trace, mining out any frames that look like compiled Ruby. Most compiled Ruby frames have a $RUBY$ marker somewhere in them, but the toplevel of a script does not...it's just the class name for the file (usually just the filename) with a method name of _file_. None of the other markers worked either, since it wasn't -e, wasn't a .rb file, and so on. As a result, we had no marker for that toplevel frame, and it was not included in backtraces or caller.
For now, I've added _file_ as another marker, since it's unlikely to show up in any Java frame (and wouldn't be a huge deal if it did).
Author: Charles Oliver Nutter <email@example.com>
Date: Wed Jan 26 05:26:02 2011 -0600
JRUBY-5363: Kernel#caller behavior is different for files with .rbw extension
- Add _file_ method name as a marker for compiled Ruby. Probably should make _file_ call a $RUBY$-marked method instead, but this is fine for now.