User Manual

(the manual describes the build 180227)

Hex-Rays interactive operation: Add/del variadic arguments


Numpad+Add variadic argument
Numpad-Delete variadic argument

This command adds or removes an argument of a variadic call. It is impossible to detect the correct number of variadic arguments in all cases, and this command can be used to fix wrongly detected arguments. It is available only when the cursor is located on a call to a variadic function (like printf). The decompiler automatically detects the argument locations, the user can only increase or decrease their number.

This command is useful if the decompiler determines the number of arguments incorrectly. For example:

        printf("This is a test call: %d\n");

apparently lacks an argument. Pressing Numpad+ modifies it:

        printf("This is a test call: %d\n", v1);

If too many arguments are added to a variadic call, decompilation may fail. Two methods to correct this situation exist:

See also: interactive operation