diff --git a/packages/fcl-passrc/src/pparser.pp b/packages/fcl-passrc/src/pparser.pp index 40df973537..ada7e85461 100644 --- a/packages/fcl-passrc/src/pparser.pp +++ b/packages/fcl-passrc/src/pparser.pp @@ -1537,6 +1537,7 @@ begin CodePageAsText:=''; NextToken; CodePageExpr:=DoParseExpression(Result,nil,false); + Result.CodePageExpr:=CodePageExpr; CheckToken(tkBraceClose); CodePageAsText:=ExprToText(CodePageExpr); end diff --git a/packages/fcl-passrc/tests/tctypeparser.pas b/packages/fcl-passrc/tests/tctypeparser.pas index 646a280ba2..c5f529b72b 100644 --- a/packages/fcl-passrc/tests/tctypeparser.pas +++ b/packages/fcl-passrc/tests/tctypeparser.pas @@ -3235,6 +3235,7 @@ procedure TTestTypeParser.TestSimpleTypeStringCodePage; begin DoTestStringType('String(10)',''); AssertEquals('Correct length', '10', TPasStringType(TPasAliasType(TheType).DestType).CodePageExpr); + AssertNotNull('Have codepage expression', TPasAliasType(TheType).CodePageExpr); end; procedure TTestTypeParser.TestSimpleTypeStringCodePageIncomplete;