diff --git a/src/emitter.c b/src/emitter.c
index 191d64170c09bdf62aca6e65db3916ea01da644e_c3JjL2VtaXR0ZXIuYw==..1486036fead9ddb248d1ec14ccc077fcdb2f3fe8_c3JjL2VtaXR0ZXIuYw== 100644
--- a/src/emitter.c
+++ b/src/emitter.c
@@ -1341,7 +1341,10 @@
 yaml_emitter_analyze_version_directive(yaml_emitter_t *emitter,
         yaml_version_directive_t version_directive)
 {
-    if (version_directive.major != 1 || version_directive.minor != 1) {
+    if (version_directive.major != 1 || (
+        version_directive.minor != 1
+        && version_directive.minor != 2
+        )) {
         return yaml_emitter_set_emitter_error(emitter,
                 "incompatible %YAML directive");
     }
diff --git a/src/parser.c b/src/parser.c
index 191d64170c09bdf62aca6e65db3916ea01da644e_c3JjL3BhcnNlci5j..1486036fead9ddb248d1ec14ccc077fcdb2f3fe8_c3JjL3BhcnNlci5j 100644
--- a/src/parser.c
+++ b/src/parser.c
@@ -1261,7 +1261,10 @@
                 goto error;
             }
             if (token->data.version_directive.major != 1
-                    || token->data.version_directive.minor != 1) {
+                    || (
+                        token->data.version_directive.minor != 1
+                        && token->data.version_directive.minor != 2
+                    )) {
                 yaml_parser_set_parser_error(parser,
                         "found incompatible YAML document", token->start_mark);
                 goto error;