Thanks!

Should I add a jira? Or will you? Or not worth one?

All the best,
OC

> On 27. 3. 2025, at 21:28, Jochen Theodorou <blackd...@gmx.org> wrote:
> 
> On 27.03.25 18:11, o...@ocs.cz wrote:
>> Hi there,
>> 
>> I've just bumped into this behaviour, as shown e.g., by the code quoted 
>> below. A safe method call first evaluates method's arguments, and only then 
>> trashes the call.
> 
> I think we do in general:
> * push arguments on stack
> * push receiver on stack
> * write method call
> 
> and for the safe variant we probably do:
> * push arguments on stack
> * push receiver on stack
> * write jmp if null
> * write method call
> * jmp to after call
> * marker for null case
> * remove elements from stack
> * push null
> * marker for after call
> 
>> Is this the intended behaviour? It would seem to me much better if the 
>> arguments were not evaluated in this case (precisely same way as if we used 
>> the java-like  “if (obj) obj.whatever...” approach instead of the safe call) 
>> — but perhaps I am overlooking something of importance.
> 
> expected yes... correct is the other question, because I am with you,
> this should be like the if-variant
> 
> bye Jochen
> 

Reply via email to