Fix busted type parameters in yaml.

R=rnystrom@google.com

Review URL: https://codereview.chromium.org//354653003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/yaml@37668 260f80e4-7a28-3924-810f-c04153c831b5
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 186cfab..e4f532c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,9 @@
+## 1.1.1
+
+* Fix broken type arguments that caused breakage on dart2js.
+
+* Fix an analyzer warning in `yaml_node_wrapper.dart`.
+
 ## 1.1.0
 
 * Add new publicly-accessible constructors for `YamlNode` subclasses. These
diff --git a/lib/src/yaml_node_wrapper.dart b/lib/src/yaml_node_wrapper.dart
index 8ea084e..2dcaa23 100644
--- a/lib/src/yaml_node_wrapper.dart
+++ b/lib/src/yaml_node_wrapper.dart
@@ -14,7 +14,7 @@
 
 /// A wrapper that makes a normal Dart map behave like a [YamlMap].
 class YamlMapWrapper extends MapBase
-    with pkg_collection.UnmodifiableMapMixin<dynamic, YamlNode>
+    with pkg_collection.UnmodifiableMapMixin
     implements YamlMap {
   final Map _dartMap;
 
@@ -61,7 +61,8 @@
   _YamlMapNodes(this._dartMap, this._span);
 
   YamlNode operator [](Object key) {
-    if (key is YamlScalar) key = key.value;
+    // Use "as" here because key being assigned to invalidates type propagation.
+    if (key is YamlScalar) key = (key as YamlScalar).value;
     if (!_dartMap.containsKey(key)) return null;
     return _nodeForValue(_dartMap[key], _span);
   }
diff --git a/pubspec.yaml b/pubspec.yaml
index 5589695..c160482 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
 name: yaml
-version: 1.1.0
+version: 1.1.1
 author: "Dart Team <misc@dartlang.org>"
 homepage: http://www.dartlang.org
 description: A parser for YAML.