Displaying 8 results from an estimated 8 matches for "r_handlerstack".
help with gotoExitingHandler(R_NilValue, call, entry); . Implementation of error handling internally
2014 Feb 26
1
help with gotoExitingHandler(R_NilValue, call, entry); . Implementation of error handling internally
...stop( "vvzvz" ) I can?t access the error.
And this boils down to this call:
gotoExitingHandler(R_NilValue, call, entry);
inside vsignalError :
static void vsignalError(SEXP call, const char *format, va_list ap)
{
char localbuf[BUFSIZE];
SEXP list, oldstack;
oldstack = R_HandlerStack;
Rvsnprintf(localbuf, BUFSIZE - 1, format, ap);
while ((list = findSimpleErrorHandler()) != R_NilValue) {
char *buf = errbuf;
SEXP entry = CAR(list);
R_HandlerStack = CDR(list);
strncpy(buf, localbuf, BUFSIZE - 1);
/* Rvsnprintf(buf, BUFSIZE - 1, format, ap);*/
buf[BUFSIZE - 1] = 0;...
2009 Apr 14
0
top level condition handlers
...specification")
.Internal(.addCondHands(classes, handlers, parentenv, NULL,
TRUE))
expr
}
<environment: namespace:base>
but it does not work, probably because the handler stack is reset
somewhere.
Would it work if I poke into the RTopLevel.handlerstack instead of the
R_HandlerStack as .addCondHands is doing ?
R_Toplevel.handlerstack = R_HandlerStack;
R_Toplevel.restartstack = R_RestartStack;
R_GlobalContext = R_ToplevelContext = &R_Toplevel;
Romain
--
Romain Francois
Independent R Consultant
+33(0) 6 28 91 30 30
http://romainfrancois.blog.free.fr
2009 Mar 03
1
profiler and loops
...t;call = syscall;
cptr->cloenv = env;
cptr->sysparent = sysp;
cptr->conexit = R_NilValue;
cptr->cend = NULL;
cptr->promargs = promargs;
cptr->callfun = callfun;
cptr->vmax = vmaxget();
cptr->intsusp = R_interrupts_suspended;
cptr->handlerstack = R_HandlerStack;
cptr->restartstack = R_RestartStack;
cptr->prstack = R_PendingPromises;
#ifdef BYTECODE
cptr->nodestack = R_BCNodeStackTop;
# ifdef BC_INT_STACK
cptr->intstack = R_BCIntStackTop;
# endif
#endif
R_GlobalContext = cptr;
}
So it could be possible to set the last argument...
2019 Jul 13
2
Mitigating Stalls Caused by Call Deparse on Error
...dll.hide
===================================================================
--- src/gnuwin32/Rdll.hide?? ?(revision 76827)
+++ src/gnuwin32/Rdll.hide?? ?(working copy)
@@ -94,6 +94,7 @@
? R_GetMaxNSize
? R_GetMaxVSize
? R_GetTraceback
+ R_GetTracebackParsed
? R_GetVarLocSymbol
? R_GetVarLocValue
? R_HandlerStack
Index: src/include/Defn.h
===================================================================
--- src/include/Defn.h?? ?(revision 76827)
+++ src/include/Defn.h?? ?(working copy)
@@ -1296,6 +1296,7 @@
?void NORET ErrorMessage(SEXP, int, ...);
?void WarningMessage(SEXP, R_WARNING, ...);
?SEXP R_GetTr...
2019 Jul 14
2
[External] Mitigating Stalls Caused by Call Deparse on Error
...==========================
> --- src/gnuwin32/Rdll.hide?? ?(revision 76827)
> +++ src/gnuwin32/Rdll.hide?? ?(working copy)
> @@ -94,6 +94,7 @@
> ? R_GetMaxNSize
> ? R_GetMaxVSize
> ? R_GetTraceback
> + R_GetTracebackParsed
> ? R_GetVarLocSymbol
> ? R_GetVarLocValue
> ? R_HandlerStack
> Index: src/include/Defn.h
> ===================================================================
> --- src/include/Defn.h?? ?(revision 76827)
> +++ src/include/Defn.h?? ?(working copy)
> @@ -1296,6 +1296,7 @@
> ?void NORET ErrorMessage(SEXP, int, ...);
> ?void WarningMessage(S...
2019 Jul 16
1
[External] Mitigating Stalls Caused by Call Deparse on Error
...76827)
>>> +++ src/gnuwin32/Rdll.hide (working copy)
>>> @@ -94,6 +94,7 @@
>>> R_GetMaxNSize
>>> R_GetMaxVSize
>>> R_GetTraceback
>>> + R_GetTracebackParsed
>>> R_GetVarLocSymbol
>>> R_GetVarLocValue
>>> R_HandlerStack
>>> Index: src/include/Defn.h
>>> ===================================================================
>>> --- src/include/Defn.h (revision 76827)
>>> +++ src/include/Defn.h (working copy)
>>> @@ -1296,6 +1296,7 @@
>>> void NORET ErrorMess...
2019 Jul 14
0
[External] Mitigating Stalls Caused by Call Deparse on Error
...==========================
> --- src/gnuwin32/Rdll.hide?? ?(revision 76827)
> +++ src/gnuwin32/Rdll.hide?? ?(working copy)
> @@ -94,6 +94,7 @@
> ? R_GetMaxNSize
> ? R_GetMaxVSize
> ? R_GetTraceback
> + R_GetTracebackParsed
> ? R_GetVarLocSymbol
> ? R_GetVarLocValue
> ? R_HandlerStack
> Index: src/include/Defn.h
> ===================================================================
> --- src/include/Defn.h?? ?(revision 76827)
> +++ src/include/Defn.h?? ?(working copy)
> @@ -1296,6 +1296,7 @@
> ?void NORET ErrorMessage(SEXP, int, ...);
> ?void WarningMessage(S...
2019 Jul 15
0
[External] Mitigating Stalls Caused by Call Deparse on Error
...src/gnuwin32/Rdll.hide?? ?(revision 76827)
>> +++ src/gnuwin32/Rdll.hide?? ?(working copy)
>> @@ -94,6 +94,7 @@
>> ? R_GetMaxNSize
>> ? R_GetMaxVSize
>> ? R_GetTraceback
>> + R_GetTracebackParsed
>> ? R_GetVarLocSymbol
>> ? R_GetVarLocValue
>> ? R_HandlerStack
>> Index: src/include/Defn.h
>> ===================================================================
>> --- src/include/Defn.h?? ?(revision 76827)
>> +++ src/include/Defn.h?? ?(working copy)
>> @@ -1296,6 +1296,7 @@
>> ?void NORET ErrorMessage(SEXP, int, ...);
>...