[flang] Repair negative scale factors in formats.
authorpeter klausler <pklausler@nvidia.com>
Mon, 9 Apr 2018 20:17:31 +0000 (13:17 -0700)
committerpeter klausler <pklausler@nvidia.com>
Mon, 9 Apr 2018 20:49:28 +0000 (13:49 -0700)
Original-commit: flang-compiler/f18@0e90d2db3a05a7c3f4f52aa02de87ecfaf55d48d
Reviewed-on: https://github.com/flang-compiler/f18/pull/48
Tree-same-pre-rewrite: false

flang/lib/parser/grammar.h

index d1e92cd..baca3ff 100644 (file)
@@ -3174,7 +3174,7 @@ TYPE_PARSER("D"_ch >> "T"_ch >>
 
 // R1314 k -> [sign] digit-string
 constexpr auto count = space >> DigitStringAsPositive{};
-constexpr auto scaleFactor = count;
+constexpr auto scaleFactor = space >> signedDigitString;
 
 // R1313 control-edit-desc ->
 //         position-edit-desc | [r] / | : | sign-edit-desc | k P |