[flang] Resolve recent NAG failures better, more clean-up, ready for merge.

Original-commit: flang-compiler/f18@5bc5a317f4
Reviewed-on: https://github.com/flang-compiler/f18/pull/183
This commit is contained in:
peter klausler 2018-09-13 11:29:10 -07:00
parent 0f28575378
commit a636624c71
3 changed files with 4 additions and 4 deletions

View file

@ -2625,7 +2625,7 @@ TYPE_CONTEXT_PARSER("PRINT statement"_en_US,
"PRINT" >> format, defaulted("," >> nonemptyList(outputItem))))
// R1215 format -> default-char-expr | label | *
TYPE_PARSER(construct<Format>(label) ||
TYPE_PARSER(construct<Format>(label / !"_."_ch) ||
construct<Format>(defaultCharExpr / !"="_tok) || construct<Format>(star))
// R1216 input-item -> variable | io-implied-do

View file

@ -454,7 +454,7 @@ TYPE_PARSER(construct<OpenMPDeclareSimdConstruct>(
maybe(parenthesized(name)), Parser<OmpClauseList>{}))
// Declarative construct & Threadprivate directive
TYPE_PARSER(lookAhead(!"!$OMP END"_tok) >> "!$OMP "_tok >>
TYPE_PARSER(!"!$OMP END"_tok >> "!$OMP "_tok >>
("DECLARE REDUCTION" >>
construct<OpenMPDeclarativeConstruct>(
construct<OpenMPDeclarativeConstruct>(
@ -536,7 +536,7 @@ TYPE_PARSER("PARALLEL SECTIONS" >> construct<OpenMPParallelSectionsConstruct>(
block, Parser<OmpEndParallelSections>{}))
TYPE_CONTEXT_PARSER("OpenMP construct"_en_US,
skipStuffBeforeStatement >> "!$OMP "_sptok >> lookAhead(!"END"_tok) >>
skipStuffBeforeStatement >> "!$OMP "_sptok >> !"END"_tok >>
(construct<OpenMPConstruct>(
indirect(Parser<OpenMPStandaloneConstruct>{})) ||
construct<OpenMPConstruct>(

View file

@ -27,7 +27,7 @@ namespace Fortran::parser {
// end-of-statement markers.
// R611 label -> digit [digit]...
constexpr auto label{space >> digitString / !"_.edq"_ch};
constexpr auto label{space >> digitString / spaceCheck};
template<typename PA> inline constexpr auto unterminatedStatement(const PA &p) {
return skipStuffBeforeStatement >>