Version 1.9.2
svn merge -c 44453 https://dart.googlecode.com/svn/branches/bleeding_edge 1.9
svn merge -c 44677 https://dart.googlecode.com/svn/branches/bleeding_edge 1.9
svn merge -c 44824 https://dart.googlecode.com/svn/branches/bleeding_edge 1.9
svn merge -c 44876 https://dart.googlecode.com/svn/branches/bleeding_edge 1.9
svn merge -c 44957 https://dart.googlecode.com/svn/branches/bleeding_edge 1.9
svn merge -c 44976 https://dart.googlecode.com/svn/branches/bleeding_edge 1.9
git-svn-id: http://dart.googlecode.com/svn/branches/1.9@45027 260f80e4-7a28-3924-810f-c04153c831b5
diff --git a/pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart b/pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart
index 1ee6e57..9d4d9c1 100644
--- a/pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart
+++ b/pkg/compiler/lib/src/js_emitter/old_emitter/emitter.dart
@@ -1457,6 +1457,7 @@
compiler,
monitor: compiler.dumpInfoTask,
allowVariableMinification: false));
+ mainOutput.add(N);
}
mainOutput.add('$parseReflectionDataName(dart)$N');
@@ -1915,6 +1916,7 @@
precompiledFunctionAst, compiler,
monitor: compiler.dumpInfoTask,
allowVariableMinification: false));
+ output.add(N);
}
output.add('$parseReflectionDataName(dart)$N');
}
diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
index a0a8db4..30c891d 100644
--- a/runtime/vm/object.cc
+++ b/runtime/vm/object.cc
@@ -8462,6 +8462,12 @@
}
while (scan_position != length) {
+ if (snippet_start == -1) {
+ if ((line == from_line) && (column == from_column)) {
+ snippet_start = scan_position;
+ }
+ }
+
char c = src.CharAt(scan_position);
if (c == '\n') {
line++;
@@ -8477,11 +8483,7 @@
scan_position++;
column++;
- if (snippet_start == -1) {
- if ((line == from_line) && (column == from_column)) {
- snippet_start = scan_position;
- }
- } else if ((line == to_line) && (column == to_column)) {
+ if ((line == to_line) && (column == to_column)) {
snippet_end = scan_position;
break;
}
diff --git a/sdk/lib/_internal/pub/lib/src/barback/dependency_computer.dart b/sdk/lib/_internal/pub/lib/src/barback/dependency_computer.dart
index 0105cbf..dfca127 100644
--- a/sdk/lib/_internal/pub/lib/src/barback/dependency_computer.dart
+++ b/sdk/lib/_internal/pub/lib/src/barback/dependency_computer.dart
@@ -75,7 +75,7 @@
return phase.expand((config) {
var id = config.id;
if (id.isBuiltInTransformer) return [];
- if (id.package != _graph.entrypoint.root.name &&
+ if (package.name != _graph.entrypoint.root.name &&
!config.canTransformPublicFiles) {
return [];
}
diff --git a/sdk/lib/_internal/pub/test/dependency_computer/dev_transformers_test.dart b/sdk/lib/_internal/pub/test/dependency_computer/dev_transformers_test.dart
index db1671c..6daa90b 100644
--- a/sdk/lib/_internal/pub/test/dependency_computer/dev_transformers_test.dart
+++ b/sdk/lib/_internal/pub/test/dependency_computer/dev_transformers_test.dart
@@ -47,6 +47,28 @@
expectDependencies({"myapp": []});
});
+ integration("does return a dependency's transformer that the root package "
+ "uses", () {
+ d.dir(appPath, [
+ d.pubspec({
+ "name": "myapp",
+ "dependencies": {"foo": {"path": "../foo"}},
+ "transformers": [{"foo": {"\$include": "test/myapp_test.dart"}}]
+ }),
+ d.dir("test", [d.file("myapp_test.dart", "")])
+ ]).create();
+
+ d.dir("foo", [
+ d.pubspec({
+ "name": "foo",
+ "version": "1.0.0"
+ }),
+ d.dir("lib", [d.file("foo.dart", transformer())])
+ ]).create();
+
+ expectDependencies({"foo": []});
+ });
+
integration("doesn't return a dependency's transformer that can run on bin",
() {
d.dir(appPath, [
diff --git a/tests/lib/mirrors/method_mirror_source_other.dart b/tests/lib/mirrors/method_mirror_source_other.dart
new file mode 100644
index 0000000..29adf5b
--- /dev/null
+++ b/tests/lib/mirrors/method_mirror_source_other.dart
@@ -0,0 +1,6 @@
+main() {
+ print("Blah");
+}
+// This function must be on the first line.
+
+class SomethingInOther {}
\ No newline at end of file
diff --git a/tests/lib/mirrors/method_mirror_source_test.dart b/tests/lib/mirrors/method_mirror_source_test.dart
index d0aad92..9b09452 100644
--- a/tests/lib/mirrors/method_mirror_source_test.dart
+++ b/tests/lib/mirrors/method_mirror_source_test.dart
@@ -3,8 +3,8 @@
// BSD-style license that can be found in the LICENSE file.
import "dart:mirrors";
-
import "package:expect/expect.dart";
+import "method_mirror_source_other.dart";
expectSource(Mirror mirror, String source) {
MethodMirror methodMirror;
@@ -14,7 +14,7 @@
methodMirror = mirror as MethodMirror;
}
Expect.isTrue(methodMirror is MethodMirror);
- Expect.equals(methodMirror.source, source);
+ Expect.equals(source, methodMirror.source);
}
foo1() {}
@@ -98,4 +98,11 @@
var a = () {};
expectSource(reflect(namedClosure), "namedClosure(x,y,z) => 1;");
expectSource(reflect(a), "() {}");
+
+ // Function at first line.
+ LibraryMirror otherLib = reflectClass(SomethingInOther).owner;
+ expectSource(otherLib.declarations[#main],
+"""main() {
+ print("Blah");
+}""");
}
diff --git a/tools/VERSION b/tools/VERSION
index 93b652d..344a8fe 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -26,6 +26,6 @@
CHANNEL stable
MAJOR 1
MINOR 9
-PATCH 1
+PATCH 2
PRERELEASE 0
PRERELEASE_PATCH 0
diff --git a/tools/testing/dart/test_suite.dart b/tools/testing/dart/test_suite.dart
index 0689ad7..99614b6 100644
--- a/tools/testing/dart/test_suite.dart
+++ b/tools/testing/dart/test_suite.dart
@@ -1465,7 +1465,6 @@
packageRootArgument(optionsFromFile['packageRoot']);
if (packageRoot != null) args.add(packageRoot);
args.add('--out=$outputFile');
- if (configuration['csp']) args.add('--csp');
args.add(inputFile);
List<String> options = optionsFromFile['sharedOptions'];
if (options != null) args.addAll(options);
@@ -2216,6 +2215,9 @@
configuration["minified"]) {
args.add("--minify");
}
+ if (compiler == "dart2js" && configuration["csp"]) {
+ args.add("--csp");
+ }
if (compiler == "dartanalyzer" || compiler == "dart2analyzer") {
args.add("--show-package-warnings");
args.add("--enable-async");