View Issue Details

IDProjectCategoryView StatusLast Update
0030722FPCFCLpublic2017-01-28 16:45
ReporterMichalis KamburelisAssigned ToMichael Van Canneyt 
PrioritynormalSeverityminorReproducibilityalways
Status resolvedResolutionfixed 
Platformx86-64OSDebian GNU/LinuxOS Version(testing)
Product Version3.1.1Product Build34702 
Target Version3.2.0Fixed in Version3.1.1 
Summary0030722: fcl-passrc segfaults on "array [0..7] of 0..1" const
DescriptionThe definition of C0 in attached file causes access violation inside fcl-passrc parser.

This is valid code, FPC compiles it (in any case, fcl-passrc should not segfault even on invalid code).

$ fpc range_type_access_violation.lpr
$ fpc test_passrc.lpr
$ ./test_passrc range_type_access_violation.lpr
An unhandled exception occurred at $0000000000486CA4:
EAccessViolation: Access violation

It seems that the using type like "0..1" is problematic in any case. Commenting out the C0 definition:

$ fpc test_passrc.lpr
$ ./test_passrc range_type_access_violation.lpr
An unhandled exception occurred at $0000000000477825:
EParserError: Expected "=" at token ";" in file range_type_access_violation.lpr at line 3 column 15
TagsNo tags attached.
Fixed in Revision35353
FPCOldBugId
FPCTarget
Attached Files

Activities

Michalis Kamburelis

2016-10-10 02:18

reporter  

range_type_access_violation.lpr (88 bytes)

Michalis Kamburelis

2016-10-10 02:18

reporter  

test_passrc.lpr (2,184 bytes)

Michael Van Canneyt

2017-01-28 16:45

administrator   ~0097766

Tricky one. But fixed. Thanks for reporting!

Issue History

Date Modified Username Field Change
2016-10-10 02:18 Michalis Kamburelis New Issue
2016-10-10 02:18 Michalis Kamburelis File Added: range_type_access_violation.lpr
2016-10-10 02:18 Michalis Kamburelis File Added: test_passrc.lpr
2016-10-10 08:08 Michael Van Canneyt Assigned To => Michael Van Canneyt
2016-10-10 08:08 Michael Van Canneyt Status new => assigned
2017-01-28 16:45 Michael Van Canneyt Fixed in Revision => 35353
2017-01-28 16:45 Michael Van Canneyt Note Added: 0097766
2017-01-28 16:45 Michael Van Canneyt Status assigned => resolved
2017-01-28 16:45 Michael Van Canneyt Fixed in Version => 3.1.1
2017-01-28 16:45 Michael Van Canneyt Resolution open => fixed
2017-01-28 16:45 Michael Van Canneyt Target Version => 3.2.0