I'm trying my hand at extending fpc trunk. Simple changes (final code will be slightly different, I'm aware that at the moment the user can pass undesired options to TProcess)
process.pp
//old
function RunCommand(const exename:string;const commands:array of string;var outputstring:string):boolean;
function RunCommand(const cmdline:string;var outputstring:string):boolean; deprecated;
//new
function RunCommand(const exename:string;const commands:array of string;var outputstring:string;const AExtraProcessOptions:TProcessOptions=[]):boolean;
function RunCommand(const cmdline:string;var outputstring:string;const AExtraProcessOptions:TProcessOptions=[]):boolean; deprecated;
My development environment is Lazarus Trunk.
I rebuild fpc with make clean all, and I've good confidence that's working. If I introduce syntax errors into my process.pp, then this rebuild bombs out at the expected place.
I then rebuild lazarus with clean all as well. And finally try to rebuild my test app with "clean up build files"
No matter what I try, I always end up with...
FormMain.pas(161,7) Error: Wrong number of parameters specified for call to "RunCommand"
Error: Found declaration: RunCommand(const AnsiString;const {Open} Array Of AnsiString;var AnsiString):Boolean;
Error: Found declaration: RunCommand(const AnsiString;var AnsiString):Boolean;
Line 167 is
RunCommand(MplayerControl1.MPlayerPath, arrCommands, sOutput, [poNoConsole]);
ctrl-clicking on RunCommand in my form takes me to the modified process.pp, and as I said, I've clean rebuilt everything I can think of.
All paths defined in Lazarus - Tools - Options are pointing to the trunk fpc that I'm modifiying.
What step am I missing, or where I can look to find to another path that might be incorrect?