Einzelnen Beitrag anzeigen

Benutzerbild von MaBuSE
MaBuSE

Registriert seit: 23. Sep 2002
Ort: Frankfurt am Main (in der Nähe)
1.837 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

"E2283: Zu viele lokale Konstanten. Verwenden Sie kürzere Prozeduren" Fehler

  Alt 3. Feb 2011, 13:49
Delphi-Version: XE
Was soll das denn???

Ich bin gerade dabei funktionierenen Quelltext von D2007 nach DXE zu portieren.

Dabei gibt es eine Prozedur, die wie folgt aussieht:
Delphi-Quellcode:
function blabla: TStrings
begin
  ...
  Result.Add('blabla');
  Result.Add('blabla');
  Result.Add('blabla');
  ...
  Result.Add('blabla');
end;
Es geht hier um ca. 1200 Zeilen.

Unter D2007 ging das !!!
Mit XE gibt es folgenden Fehler:

Delphi Hilfe
E2283: Zu viele lokale Konstanten. Verwenden Sie kürzere Prozeduren (Delphi)
Eine oder mehrere Ihrer Prozeduren enthält so viele String-Konstanten, dass die interne Speichergrenze des Compilers überschritten wurde. Dieses Problem kann in automatisch generiertem Code auftreten. Kürzen Sie die betreffenden Prozeduren, oder deklarieren Sie Konstanten anstelle der vielen Literale.

Retrieved from "http://docwiki.embarcadero.com/RADStudio/XE/de/E2283:_Zu_viele_lokale_Konstanten._Verwenden_Sie_k %C3%BCrzere_Prozeduren_(Delphi)"
Category: RAD Studio – Referenz

Lösung:
Delphi-Quellcode:
function blabla: TStrings
begin
  ...
  Result.Text := 'blabla' + #13#10 +
    'blabla' + #13#10 +
    'blabla' + #13#10 +
    ...
    'blabla' + #13#10;
end;

Diese neue künstliche Beschränkung finde ich doof ;-/

mfg
MaBuSE

ps: Habe gerade gesehen, dass auch schon andere auf das Problem gestossen sind:
http://www.delphipraxis.net/106236-f...bersetzen.html
(°¿°) MaBuSE - proud to be a DP member
(°¿°) MaBuSE - proud to be a "Rüsselmops" ;-)
  Mit Zitat antworten Zitat