| Index: packages/yaml/lib/src/loader.dart | 
| diff --git a/packages/yaml/lib/src/loader.dart b/packages/yaml/lib/src/loader.dart | 
| index 07ae43051f8d8825341ab5e7c257a047a5f5f19e..a2d681b928cbd871bad17daaa1eb040f0c2fbc99 100644 | 
| --- a/packages/yaml/lib/src/loader.dart | 
| +++ b/packages/yaml/lib/src/loader.dart | 
| @@ -2,8 +2,6 @@ | 
| // for details. All rights reserved. Use of this source code is governed by a | 
| // BSD-style license that can be found in the LICENSE file. | 
|  | 
| -library yaml.loader; | 
| - | 
| import 'package:charcode/ascii.dart'; | 
| import 'package:source_span/source_span.dart'; | 
|  | 
| @@ -149,7 +147,7 @@ class Loader { | 
| throw new YamlException("Invalid tag for mapping.", firstEvent.span); | 
| } | 
|  | 
| -    var children = deepEqualsMap(); | 
| +    var children = deepEqualsMap/*<dynamic, YamlNode>*/(); | 
| var node = new YamlMap.internal( | 
| children, firstEvent.span, firstEvent.style); | 
| _registerAnchor(firstEvent.anchor, node); | 
| @@ -158,6 +156,10 @@ class Loader { | 
| while (event.type != EventType.MAPPING_END) { | 
| var key = _loadNode(event); | 
| var value = _loadNode(_parser.parse()); | 
| +      if (children.containsKey(key)) { | 
| +        throw new YamlException("Duplicate mapping key.", key.span); | 
| +      } | 
| + | 
| children[key] = value; | 
| event = _parser.parse(); | 
| } | 
|  |