Trying to compile an existing DUnit test project failed in TestFramework.pas on line 3210.
The StackTrace method is to be called there and it looks like the parameters got expanded
so that the params 4-6 are all pointers now. DUnit fails to comply with this.
Is there any solution available from the MadExcept side?
XE8, DUnit and 4.0.12 issue
Re: XE8, DUnit and 4.0.12 issue
I've no experience with DUnit. How does the exact code line look like which the compiler complains about now?
Re: XE8, DUnit and 4.0.12 issue
Code: Select all
function TTestFailure.CaptureStackTrace(ThrownException: Exception; ThrownExceptionAddress: Pointer): string;
{$IFDEF USE_JEDI_JCL}
var
Trace: TStrings;
{$ENDIF}
begin
{$IFDEF CLR}
Result := thrownException.StackTrace;
{$ELSE}
{$IFDEF USE_JEDI_JCL}
Trace := TStringList.Create;
try
JclDebug.JclLastExceptStackListToStrings(Trace, true);
Result := Trace.Text;
finally
Trace.Free;
end;
{$ELSE}
Auskommentiert, da Parameter des StackTrace Aufrufs in MadExcept 4.0.12 anders sind
{$IFDEF madExcept}
Result := madStackTrace.StackTrace( false, false, false, nil,
ThrownExceptionAddress, false,
false, 0, 0, nil,
@ThrownExceptionAddress );
{$ELSE}
Result := '';
{$ENDIF madExcept}
{$ENDIF USE_JEDI_JCL}
{$ENDIF CLR}
end;
https://quality.embarcadero.com/browse/RSP-11253
Re: XE8, DUnit and 4.0.12 issue
Just add one additional "nil" after the first "nil", I think that should fix the compiler complaint. madExcept 4 added an additional parameter there. Might not have been a good idea, I have to admit now. I should have placed the new parameter at the end of the function...
Re: XE8, DUnit and 4.0.12 issue
Hi,
I'm Diego Navarro, an Embarcadero RTL developer, please, send me a private message to contact and fix this issue properly on our TestFramework, I need more info about this interface change and when was introduced.
Thanks!!
I'm Diego Navarro, an Embarcadero RTL developer, please, send me a private message to contact and fix this issue properly on our TestFramework, I need more info about this interface change and when was introduced.
Thanks!!
Re: XE8, DUnit and 4.0.12 issue
I've replied via email.