Hi folks! Studying python byte code I encountered an interesting issue: there is no matter, which one of the following function calls I compile:
1: func('foo','bar',foo='bar') 2: func('foobar') 3: func(foo='bar') The compiler always uses the simple CALL_FUNCTION for all of the source examples above. While this is fine for me (since the labels in Python/ceval.c for the other 3 opcodes lead to the same code anyway), I'm curious to know if there is a case where the compiler really uses the CALL_FUNCTION_* opcodes or if we could silently remove these opcodes without breaking anything? Greetings, Fips -- http://mail.python.org/mailman/listinfo/python-list