diff options
author | 2017-02-16 13:48:37 +0000 | |
---|---|---|
committer | 2017-02-16 16:56:17 +0000 | |
commit | 7f0cd62e3f7c896ace34997c330517e3c557ca64 (patch) | |
tree | 6950717635e3ce5107217547ab7c4ba2cb29c244 /src/main/java/com/google/devtools/build/lib/actions | |
parent | 45282686be49297b3e910f8876a28dc0e9eeef5d (diff) |
Disallow comparison of objects of different types in Skylark
RELNOTES[INC]: It's not allowed anymore to compare objects of different types
(i.e. a string to an integer) and objects for which comparison rules are not
defined (i.e. a dict to another dict) using order operators.
--
PiperOrigin-RevId: 147710942
MOS_MIGRATED_REVID=147710942
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib/actions')
-rw-r--r-- | src/main/java/com/google/devtools/build/lib/actions/Artifact.java | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/actions/Artifact.java b/src/main/java/com/google/devtools/build/lib/actions/Artifact.java index 29b99026f8..4b7adbc406 100644 --- a/src/main/java/com/google/devtools/build/lib/actions/Artifact.java +++ b/src/main/java/com/google/devtools/build/lib/actions/Artifact.java @@ -31,6 +31,7 @@ import com.google.devtools.build.lib.skylarkinterface.SkylarkModule; import com.google.devtools.build.lib.skylarkinterface.SkylarkModuleCategory; import com.google.devtools.build.lib.skylarkinterface.SkylarkValue; import com.google.devtools.build.lib.syntax.EvalUtils; +import com.google.devtools.build.lib.syntax.EvalUtils.ComparisonException; import com.google.devtools.build.lib.syntax.Printer; import com.google.devtools.build.lib.util.FileType; import com.google.devtools.build.lib.util.Preconditions; @@ -135,7 +136,7 @@ public class Artifact if (o instanceof Artifact) { return EXEC_PATH_COMPARATOR.compare(this, (Artifact) o); } - return EvalUtils.compareByClass(this, o); + throw new ComparisonException("Cannot compare artifact with " + EvalUtils.getDataTypeName(o)); } |