[
https://issues.apache.org/jira/browse/DAFFODIL-1704?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Mike Beckerle updated DAFFODIL-1704:
------------------------------------
Fix Version/s: 3.5.0
> PE undetected - Binary number parsers are missing checks for bitLength
> ----------------------------------------------------------------------
>
> Key: DAFFODIL-1704
> URL: https://issues.apache.org/jira/browse/DAFFODIL-1704
> Project: Daffodil
> Issue Type: Bug
> Components: Back End, General
> Affects Versions: 2.0.0
> Reporter: Elizabeth Fahl
> Priority: Critical
> Fix For: 3.5.0
>
>
> This was discussed in a review of boolean parser and unparser, which have a
> check for bitLength that the binary number parsers do not. These checks would
> verify that bitLength falls within the accepted range for it's type as noted
> in 12.3.7.2.1 in the spec. It also needs to be determined if this check would
> be better in an evaluatable so it could be done at compile time.
> The check in BinaryBooleanParsers.scala:
> {code}
> val nBits = getBitLength(start)
> if (nBits < 1 || nBits > 32) {
> PE(start, "Number of bits %d out of range, must be between 1 and 32
> bits.", nBits)
> return
> }
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)