This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author loewis
Recipients asvetlov, gregory.p.smith, jcea, loewis, mark.dickinson, meador.inge, serhiy.storchaka, skrah
Date 2012-07-25.13:11:18
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1343221879.7.0.126490490227.issue15402@psf.upfronthosting.co.za>
In-reply-to
Content
Jesús: this is a (common) mistake. Standard C makes it undefined behavior to call a function with an incorrect number of arguments, see 6.5.2.2p9

# If the function is defined with a type that is not compatible with the 
# type (of the expression) pointed to by the expression that denotes the 
# called function, the behavior is undefined.

Two function pointers are compatible if the function types are compatible (6.7.5.1p2), which in turn is defined in 6.7.5.3p15,
which is too long to quote here.

Your understanding of the parameter passing convention is not part of the language definition. The only way to have more parameters in the call than are declared is by means of an ellipsis. 

There is an exception for "old style" (K&R) functions and declarations, but it doesn't apply here.
History
Date User Action Args
2012-07-25 13:11:19loewissetrecipients: + loewis, gregory.p.smith, jcea, mark.dickinson, asvetlov, skrah, meador.inge, serhiy.storchaka
2012-07-25 13:11:19loewissetmessageid: <1343221879.7.0.126490490227.issue15402@psf.upfronthosting.co.za>
2012-07-25 13:11:19loewislinkissue15402 messages
2012-07-25 13:11:18loewiscreate