Re: routine_id
- Posted by mattlewis (admin) Aug 26, 2008
- 798 views
How does ver 4.0 know what the parameters are ? Are you doing a 2 pass parse ? I noticed that the startup parse seems to be quite slow on my 900MHz machine.
It doesn't. What it does is leave some extra space in case of extra default parameters, and also remembers the fact that there was something that looked like a forward reference. It then checks (at the end of each file) to see if it can resolve any of the references that weren't previously resolved.
At the very end, if there are still any outstanding calls that have yet to be resolved, they are listed as an error.
So each forward reference takes a little bit more room in the IL than a normal call would, and there's a slight performance difference, since there's an extra goto in the IL to jump from the end of the actual call to the beginning of the next instruction. This is pretty minor (and you'd probably have to really work at it to tell the difference). It is definitely faster than a call_proc/func though.
Matt