(dbx) call change_glyph(1,3)
While the parameters are optional, you must type the parentheses after the function_name. For example:
(dbx) call type_vehicle()
If the source file in which the function is defined was compiled with the– g option, or if the prototype declaration is visible at the current scope, dbx checks the number and type of arguments and issues an error message if there is a mismatch. Otherwise, dbx does not check the number of parameters and proceeds with the call.
By default, after every call command, dbx automatically calls fflush(stdout) to ensure that any information stored in the I/O buffer is printed. To turn off automatic flushing, set the dbx environment variable output_auto_flush to off.
For C++, dbx handles the implicit this pointer, default arguments, and function overloading. The C++ overloaded functions are resolved automatically if possible. If any ambiguity remains (for example, functions not compiled with -g), dbx displays a list of the overloaded names.
When you use the call command, dbx behaves as though you used the next command, returning from the called function. However, if the program encounters a breakpoint in the called function, dbx stops the program at the breakpoint and issues a message. If you now type a where command, the stack trace shows that the call originated from dbx command level.
If you continue execution, the call returns normally. If you attempt to kill, run, rerun, or debug, the command aborts as dbx tries to recover from the nesting. You can then re-issue the command. Alternatively, you can use the command pop -c to pop all frames up to the most recent call.