The R Project SVN R

Rev

Rev 77335 | Rev 77514 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
20124 ripley 1
 
77431 ripley 2
R Under development (unstable) (2019-11-17 r77430) -- "Unsuffered Consequences"
75937 ripley 3
Copyright (C) 2019 The R Foundation for Statistical Computing
68809 ripley 4
Platform: x86_64-pc-linux-gnu (64-bit)
20124 ripley 5
 
6
R is free software and comes with ABSOLUTELY NO WARRANTY.
7
You are welcome to redistribute it under certain conditions.
39826 maechler 8
Type 'license()' or 'licence()' for distribution details.
20124 ripley 9
 
10
R is a collaborative project with many contributors.
39826 maechler 11
Type 'contributors()' for more information and
12
'citation()' on how to cite R or R packages in publications.
20124 ripley 13
 
39826 maechler 14
Type 'demo()' for some demos, 'help()' for on-line help, or
15
'help.start()' for an HTML browser interface to help.
16
Type 'q()' to quit R.
20124 ripley 17
 
18
> #### STRICT test suite in the spirit of no-segfaults,
19
> #### but with explicit statements.
20
> 
21
> options(error=expression(NULL))
22
> stop("test of `options(error=expression(NULL))'")
23
Error: test of `options(error=expression(NULL))'
24
> 
25
> if(FALSE) {
26
+ ## these ought to work on machines with enough memory
27
+ ## These segfaulted in 1.3.x ,  give "could not allocate" errors now
28
+   integer(2^30+1)
29
+    double(2^30+1)
30
+   complex(2^30+1)
31
+ character(2^30+1)
32
+ vector("list", 2^30+2)
33
+ }
34
> 
42973 maechler 35
> ## bad infinite recursion / on.exit / ... interactions
70362 luke 36
> ##   catch the error to permit different error messages emitted
37
> ##   (handling of infinite recursion is different in the AST interpreter
38
> ##   and the byte-code interpreter)
39
> 
69945 luke 40
> bar <- function() 1+1
41
> foo <- function() { on.exit(bar()); foo() }
70362 luke 42
> tryCatch(foo(), error=function(x) TRUE) # now simple "infinite recursion"
43
[1] TRUE
42973 maechler 44
>