Peter Hofer from the Graal team reported this.
If GetLocalXXX is called from a virtual thread with the thread parameter set to NULL (meaning current thread) then it should read the value of the locals in the virtual thread frames. Instead, it reads the carrier thread locals and/or crashes.
It seems to be an oversight that GetLocalXXX does not check if the thread parameter is NULL.
If GetLocalXXX is called from a virtual thread with the thread parameter set to NULL (meaning current thread) then it should read the value of the locals in the virtual thread frames. Instead, it reads the carrier thread locals and/or crashes.
It seems to be an oversight that GetLocalXXX does not check if the thread parameter is NULL.