diff --git a/Text/Yaml/Reference.bnf b/Text/Yaml/Reference.bnf
--- a/Text/Yaml/Reference.bnf
+++ b/Text/Yaml/Reference.bnf
@@ -649,8 +649,8 @@
 
 s_l__block_scalar     n c = s_separate n c & ( c_ns_properties n c & s_separate n c ?)
                           & ( c_l__literal n / c_l__folded n )
-s_l__block_collection n c = ( ( s_separate n c & c_ns_properties n c ?) & s_l_comments ?)
-                          & ( l__block_sequence (seq_spaces n c)  / l__block_mapping n )
+s_l__block_collection n c = ( s_separate n c & c_ns_properties n c & s_l_comments / s_l_comments )
+                          & ( l__block_sequence (seq_spaces n c) / l__block_mapping n )
 
 -- Document:
 
diff --git a/YamlReference.cabal b/YamlReference.cabal
--- a/YamlReference.cabal
+++ b/YamlReference.cabal
@@ -1,5 +1,5 @@
 Name:                YamlReference
-Version:             0.7
+Version:             0.8
 Cabal-Version:       >= 1.2
 License:             LGPL
 License-File:        lgpl.txt
@@ -7,8 +7,8 @@
 Author:              Oren Ben-Kiki
 Maintainer:          yaml-oren@ben-kiki.org
 Stability:           alpha
-Homepage:            www.ben-kiki.org/oren/YamlReference
-Package-Url:         www.ben-kiki.org/oren/YamlReference/YamlReference-0.7.tar.gz
+Homepage:            http://www.ben-kiki.org/oren/YamlReference
+Package-Url:         http://www.ben-kiki.org/oren/YamlReference/YamlReference-0.8.tar.gz
 Category:            Text
 Synopsis:            YAML reference implementation
 Description:         This package contains \"the\" reference YAML syntax parser
@@ -22,8 +22,7 @@
                      the @yeast2html@ YAML syntax visualizer (contained in this
                      package), pretty printers, etc. This is a streaming parser
                      that will \"immediately\" begin to generate output. Updated
-                     to lift the 1K key size limit inside flow mapping for
-                     complete JSON compatibility.
+                     to fix a greedy production for nested block mappings.
 Extra-Source-Files:  Text/Yaml/Reference.bnf yeast2html yaml2yeast.css
                      tests/b-as-line-feed.input tests/b-as-line-feed.output
                      tests/b-carriage-return.input
@@ -1116,6 +1115,8 @@
                      tests/s-l+block-node.n=-1.c=block-out.2.output
                      tests/s-l+block-node.n=-1.c=block-out.3.input
                      tests/s-l+block-node.n=-1.c=block-out.3.output
+                     tests/s-l+block-node.n=-1.c=block-out.invalid.input
+                     tests/s-l+block-node.n=-1.c=block-out.invalid.output
                      tests/s-l+block-node.n=2.c=block-out.block.input
                      tests/s-l+block-node.n=2.c=block-out.block.output
                      tests/s-l+block-node.n=2.c=block-out.flow.input
diff --git a/tests/s-l+block-node.n=-1.c=block-out.invalid.input b/tests/s-l+block-node.n=-1.c=block-out.invalid.input
new file mode 100644
--- /dev/null
+++ b/tests/s-l+block-node.n=-1.c=block-out.invalid.input
@@ -0,0 +1,2 @@
+a: b:
+  c:
diff --git a/tests/s-l+block-node.n=-1.c=block-out.invalid.output b/tests/s-l+block-node.n=-1.c=block-out.invalid.output
new file mode 100644
--- /dev/null
+++ b/tests/s-l+block-node.n=-1.c=block-out.invalid.output
@@ -0,0 +1,18 @@
+N
+M
+X
+N
+S
+Ta
+s
+n
+I:
+!Commit to 'node' was made outside it
+w 
+N
+S
+!Commit to 'node' was made outside it
+Tb
+s
+n
+!$InputFile$: line 1: column 4: Expected start of line
