NÖ weil sie unter Delphi2010 ausgespuckt wird und nicht unter Delphi 10.2.3..
Dann compilierst du was anderes oder mehr als hier gezeigt.
Ich habe mal die nötigen
GDI+ Deklarationen extrahiert, da es die unter D2010 im Standard noch nicht gibt. Dieses Programm
Delphi-Quellcode:
program Test;
type
Status = (Ok, GenericError, InvalidParameter, OutOfMemory, ObjectBusy, InsufficientBuffer, NotImplemented, Win32Error,
WrongState, Aborted, FileNotFound, ValueOverflow, AccessDenied, UnknownImageFormat, FontFamilyNotFound,
FontStyleNotFound, NotTrueTypeFont, UnsupportedGdiplusVersion, GdiplusNotInitialized, PropertyNotFound,
PropertyNotSupported);
TStatus = Status;
GpStatus = TStatus;
type
GpFont = Pointer;
function GdipDeleteFont(font: GpFont): GpStatus;
begin
Result := Ok;
end;
procedure Main;
var
TempFont: GpFont;
begin
TempFont := nil;
if Assigned(TempFont) then begin
GdipDeleteFont(TempFont);
TempFont := nil; // H2077 Auf 'TempFont' zugewiesener Wert wird niemals benutzt
end;
end;
begin
Main;
end.
gibt sowohl unter D2010 als auch unter Delphi 10.2.3 nur
einen Hinweis
Zitat:
H2077 Auf 'TempFont' zugewiesener Wert wird niemals benutzt
für die
zweite Zuweisung von TempFont innerhalb des if-then-Blocks aus. Die erste Zuweisung auf nil wird nicht bemängelt. Die beiden Compiler arbeiten in diesem Fall also identisch und auch korrekt.