From f2503533d8ab9edb6bea281c2e192535a465a402 Mon Sep 17 00:00:00 2001 From: Lukas Stadler <lukas.stadler@oracle.com> Date: Wed, 16 Aug 2017 13:03:52 +0200 Subject: [PATCH] clear last.warning during base package loading --- .../oracle/truffle/r/nodes/builtin/RBuiltinPackages.java | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/RBuiltinPackages.java b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/RBuiltinPackages.java index 3cbd00ed57..2d774b7c73 100644 --- a/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/RBuiltinPackages.java +++ b/com.oracle.truffle.r.nodes.builtin/src/com/oracle/truffle/r/nodes/builtin/RBuiltinPackages.java @@ -33,6 +33,7 @@ import com.oracle.truffle.api.CompilerAsserts; import com.oracle.truffle.api.RootCallTarget; import com.oracle.truffle.api.Truffle; import com.oracle.truffle.api.frame.FrameDescriptor; +import com.oracle.truffle.api.frame.FrameSlot; import com.oracle.truffle.api.frame.MaterializedFrame; import com.oracle.truffle.api.source.Source; import com.oracle.truffle.r.nodes.builtin.base.BasePackage; @@ -116,6 +117,11 @@ public final class RBuiltinPackages implements RBuiltinLookup { } catch (ParseException e) { throw new RInternalError(e, "error while parsing base source from %s", baseSource.getName()); } + // forcibly clear last.warnings during startup: + FrameSlot slot = baseFrame.getFrameDescriptor().findFrameSlot("last.warning"); + if (slot != null) { + FrameSlotChangeMonitor.setObject(baseFrame, slot, null); + } } finally { RContext.getInstance().setLoadingBase(false); } -- GitLab