Index: sdk/lib/core/duration.dart |
diff --git a/sdk/lib/core/duration.dart b/sdk/lib/core/duration.dart |
index f2dd01b331eda4fd350d41001d5e2686db7d2760..bc1364fba3e3daf3bd71a2a3b76ddc17b392343a 100644 |
--- a/sdk/lib/core/duration.dart |
+++ b/sdk/lib/core/duration.dart |
@@ -295,5 +295,6 @@ class Duration implements Comparable<Duration> { |
* The returned `Duration` has the same length as this one, but will have the |
* opposite sign of this one. |
*/ |
- Duration operator -() => new Duration._microseconds(-_duration); |
+ // Using subtraction helps dart2js avoid negative zeros. |
+ Duration operator -() => new Duration._microseconds(0 - _duration); |
} |