Das Problem ist einfach nur, dass beim Upgrade deiner D11 Projekte die Projekt-Einstrellugnen verändert wurden. War bei mir auch so. Habe dann einfach in den Projekt-Einstellugnen die Bereichs- und Überflussüberprüfung deaktiviert, damit diese gleich eingegstellt sind wie bei D11. Am Compiler wurde mMn nichts geändert, sondern einfach die Vorgabeprojekteinstellungen verändert. Aber wie schon geschrieben, war dein Code so eben nicht korrekt und würde mit eingeschaltetem Range oder Overflow Check auch unter D11 einen Fehler bringen.
Neu sind in den Projektoptionen (in englischem Delphi) unter Building/Delphi Compiler/Compiling alle Einträge unter "Runtime Errors" eingeschaltet, wo hingegen bis D11 nur der I/O Check aktiv war. Einfach die beiden anderen Check deaktivieren und alles sollte wieder so wie in D11 laufen.
DANKE! Das war die Info die ich gesucht habe! Vielen Dank!
@Rollo62: Bei uns im Code werden an der Stelle keine Magicnumbers genutzt, sondern von einem Speicher Daten gelesen, daher ist das keine Hilfe, würde auch in meinen Augen keinen Fehler beheben. Da unsere Variablen/Konstanten dann ja auch schon immer Flasch gesetzt gewesen wären und es bisher nicht aufgefallen wäre. Aber im großen und ganzen Stimme ich dir zu! Keine Magic numbers wenn möglich.