Confirmed.
The problem seems to be a change in range check error or the succ function.
The TAlignment = (taLeftJustify, taRightJustify, taCenter), so succ(taCenter) should become the first element: taLeftJustify, not the third unexisting element. I think the succ(taCenter) was introduced so other alignments could be used (like justify) when they become available.
I think replacing succ(taCenter) with taLeftJustify should work as short term solution.
//MetaTextAlignmentJustify: Result := succ(taCenter);
MetaTextAlignmentJustify: Result := taLeftJustify;
//if ASource = succ(taCenter) then
if ASource = taLeftJustify then
Tested it, compiles and runs.