[1003.1(2016)/Issue7+TC2 0001097]: Shell Grammar rule 4 is nonsense that conflicts with existing implementations
The following issue has been CLOSED. == http://austingroupbugs.net/view.php?id=1097 == Reported By:Mark_Galeck Assigned To: == Project:1003.1(2016)/Issue7+TC2 Issue ID: 1097 Category: Shell and Utilities Type: Error Severity: Editorial Priority: normal Status: Closed Name: Mark Galeck Organization: User Reference: Section:2.10.2 Shell Grammar Rules Page Number:2376, 2379 Line Number:75919, 75920, 76068, 76069 Interp Status: --- Final Accepted Text: Resolution: Withdrawn Fixed in Version: == Date Submitted: 2016-10-20 15:24 UTC Last Modified: 2016-10-27 18:09 UTC == Summary:Shell Grammar rule 4 is nonsense that conflicts with existing implementations == -- (0003474) Don Cragun (manager) - 2016-10-27 18:09 http://austingroupbugs.net/view.php?id=1097#c3474 -- Withdrawn by submitter per http://austingroupbugs.net/view.php?id=1097#c3461 Issue History Date ModifiedUsername FieldChange == 2016-10-20 15:24 Mark_GaleckNew Issue 2016-10-20 15:24 Mark_GaleckName => Mark Galeck 2016-10-20 15:24 Mark_GaleckSection => 2.10.2 Shell Grammar Rules 2016-10-20 15:24 Mark_GaleckPage Number => 2376, 2379 2016-10-20 15:24 Mark_GaleckLine Number => 75919, 75920, 76068, 76069 2016-10-21 08:32 geoffclare Note Added: 0003447 2016-10-27 12:43 Mark_GaleckNote Added: 0003461 2016-10-27 18:09 Don Cragun Interp Status => --- 2016-10-27 18:09 Don Cragun Note Added: 0003474 2016-10-27 18:09 Don Cragun Status New => Closed 2016-10-27 18:09 Don Cragun Resolution Open => Withdrawn ==
[1003.1(2016)/Issue7+TC2 0001097]: Shell Grammar rule 4 is nonsense that conflicts with existing implementations
A NOTE has been added to this issue. == http://austingroupbugs.net/view.php?id=1097 == Reported By:Mark_Galeck Assigned To: == Project:1003.1(2016)/Issue7+TC2 Issue ID: 1097 Category: Shell and Utilities Type: Error Severity: Editorial Priority: normal Status: New Name: Mark Galeck Organization: User Reference: Section:2.10.2 Shell Grammar Rules Page Number:2376, 2379 Line Number:75919, 75920, 76068, 76069 Interp Status: --- Final Accepted Text: == Date Submitted: 2016-10-20 15:24 UTC Last Modified: 2016-10-27 12:43 UTC == Summary:Shell Grammar rule 4 is nonsense that conflicts with existing implementations == -- (0003461) Mark_Galeck (reporter) - 2016-10-27 12:43 http://austingroupbugs.net/view.php?id=1097#c3461 -- This report is included in the summary report 1100 and can be cancelled. Issue History Date ModifiedUsername FieldChange == 2016-10-20 15:24 Mark_GaleckNew Issue 2016-10-20 15:24 Mark_GaleckName => Mark Galeck 2016-10-20 15:24 Mark_GaleckSection => 2.10.2 Shell Grammar Rules 2016-10-20 15:24 Mark_GaleckPage Number => 2376, 2379 2016-10-20 15:24 Mark_GaleckLine Number => 75919, 75920, 76068, 76069 2016-10-21 08:32 geoffclare Note Added: 0003447 2016-10-27 12:43 Mark_GaleckNote Added: 0003461 ==
[1003.1(2016)/Issue7+TC2 0001097]: Shell Grammar rule 4 is nonsense that conflicts with existing implementations
A NOTE has been added to this issue. == http://austingroupbugs.net/view.php?id=1097 == Reported By:Mark_Galeck Assigned To: == Project:1003.1(2016)/Issue7+TC2 Issue ID: 1097 Category: Shell and Utilities Type: Error Severity: Editorial Priority: normal Status: New Name: Mark Galeck Organization: User Reference: Section:2.10.2 Shell Grammar Rules Page Number:2376, 2379 Line Number:75919, 75920, 76068, 76069 Interp Status: --- Final Accepted Text: == Date Submitted: 2016-10-20 15:24 UTC Last Modified: 2016-10-21 08:32 UTC == Summary:Shell Grammar rule 4 is nonsense that conflicts with existing implementations == -- (0003447) geoffclare (manager) - 2016-10-21 08:32 http://austingroupbugs.net/view.php?id=1097#c3447 -- I agree there is a problem here, but the suggested solution is not right. Rule 4 is needed for this case: $ case foobar in > esac) -bash: syntax error near unexpected token `)' Maybe there is a way to fix it by rewording rule 4 to distinguish between pattern) and (pattern). If not, we'll need to change the grammar somehow (perhaps by introducing a pattern_or_esac production). Issue History Date ModifiedUsername FieldChange == 2016-10-20 15:24 Mark_GaleckNew Issue 2016-10-20 15:24 Mark_GaleckName => Mark Galeck 2016-10-20 15:24 Mark_GaleckSection => 2.10.2 Shell Grammar Rules 2016-10-20 15:24 Mark_GaleckPage Number => 2376, 2379 2016-10-20 15:24 Mark_GaleckLine Number => 75919, 75920, 76068, 76069 2016-10-21 08:32 geoffclare Note Added: 0003447 ==
[1003.1(2016)/Issue7+TC2 0001097]: Shell Grammar rule 4 is nonsense that conflicts with existing implementations
The following issue has been SUBMITTED. == http://austingroupbugs.net/view.php?id=1097 == Reported By:Mark_Galeck Assigned To: == Project:1003.1(2016)/Issue7+TC2 Issue ID: 1097 Category: Shell and Utilities Type: Error Severity: Editorial Priority: normal Status: New Name: Mark Galeck Organization: User Reference: Section:2.10.2 Shell Grammar Rules Page Number:2376, 2379 Line Number:75919, 75920, 76068, 76069 Interp Status: --- Final Accepted Text: == Date Submitted: 2016-10-20 15:24 UTC Last Modified: 2016-10-20 15:24 UTC == Summary:Shell Grammar rule 4 is nonsense that conflicts with existing implementations Description: According to the production pattern: WORD /* Apply rule 4 */ the input: case foobar in (esac) esac should not accept, because the first 'esac' would be identified as token Esac, and not WORD, according to rule 4. This is of course nonsense, and indeed, both dash and bash have no problem accepting the above. Moreover, the production pattern : pattern '|' WORD /* Do not apply rule 4 */ is nonsense as well. Because we are told that rule 4 does not apply, we apply the default rule 1, according to which, again, 'esac' would be Esac here, not WORD, so that case foobar in (esac|esac) esac should again not accept. But of course it does in the existing implementations, as well it should. Desired Action: Nuke rule 4, it makes no sense and does not apply, anywhere. Change the pattern productions to: pattern: WORD /*TOKEN is always WORD here*/ | pattern '|' WORD /*TOKEN is always WORD here*/ == Issue History Date ModifiedUsername FieldChange == 2016-10-20 15:24 Mark_GaleckNew Issue 2016-10-20 15:24 Mark_GaleckName => Mark Galeck 2016-10-20 15:24 Mark_GaleckSection => 2.10.2 Shell Grammar Rules 2016-10-20 15:24 Mark_GaleckPage Number => 2376, 2379 2016-10-20 15:24 Mark_GaleckLine Number => 75919, 75920, 76068, 76069 ==