Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.Sign up
$. never seems to change once JIT'd #4508
I was debugging some stuff around $. and ARGF and noticed $. was not changing:
look at the $. output:
If I run in interp:
(Note: This is local on my branch on the $. number in the first output will display like this until I land my changes)
So $. is always 1 and that is because global bootstrapping is setting up a switchpoint and caching a value but $. is special in that it is an opaque global. It never changes as an object. It's get looks at Ruby.getCurrentLine(). So we need to be able to invalidate $. whenever we set setCurrentLine and have our switch point see that...
I suspect this one of a few other special system gloabsl which are similiarly opaque to our indy caching strategy.