From 91f0ae0cc9c0ef5b9bfad70d8a2e9e8148b5c7e6 Mon Sep 17 00:00:00 2001 From: Adam Welc <adam.welc@oracle.com> Date: Tue, 16 Aug 2016 20:13:02 -0700 Subject: [PATCH] Rewritten parameter casts for .cache_class builtin. --- .../com/oracle/truffle/r/nodes/builtin/base/CacheClass.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/CacheClass.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/CacheClass.java index 9cf229dc33..2d78a5d73a 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/CacheClass.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/base/CacheClass.java @@ -31,6 +31,11 @@ public abstract class CacheClass extends RBuiltinNode { @Override protected void createCasts(CastBuilder casts) { casts.arg("class").defaultError(RError.Message.GENERIC, "invalid class argument to internal .class_cache").mustBe(stringValue()).asStringVector().findFirst(); + // apparently, "extends" does not have to be a string vector (GNU R will not signal this + // error) - but it does not seem to make much sense and it's doubtful if it's worth + // supporting since this is internal function + casts.arg("extends").defaultError(RError.Message.GENERIC, "invalid extends argument to internal .class_cache").mustBe(stringValue()).asStringVector(); + } @TruffleBoundary -- GitLab