The R Project SVN R

Rev

Rev 75618 | Rev 84209 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 75618 Rev 77327
Line 76... Line 76...
76
#ifdef TESTING_WRITE_BARRIER
76
#ifdef TESTING_WRITE_BARRIER
77
# define STRICT_TYPECHECK
77
# define STRICT_TYPECHECK
78
# define CATCH_ZERO_LENGTH_ACCESS
78
# define CATCH_ZERO_LENGTH_ACCESS
79
#endif
79
#endif
80
 
80
 
-
 
81
 
-
 
82
#if defined(USE_RINTERNALS) || defined(COMPILING_R)
-
 
83
/* inline version of CAR to support immediate bindings */
-
 
84
INLINE_FUN SEXP CAR(SEXP e)
-
 
85
{
-
 
86
    if (BNDCELL_TAG(e))
-
 
87
	error("bad binding access");
-
 
88
    return CAR0(e);
-
 
89
}
-
 
90
#else
-
 
91
SEXP CAR(SEXP e);
-
 
92
#endif
-
 
93
 
81
#ifdef STRICT_TYPECHECK
94
#ifdef STRICT_TYPECHECK
82
INLINE_FUN void CHKVEC(SEXP x) {
95
INLINE_FUN void CHKVEC(SEXP x) {
83
    switch (TYPEOF(x)) {
96
    switch (TYPEOF(x)) {
84
    case CHARSXP:
97
    case CHARSXP:
85
    case LGLSXP:
98
    case LGLSXP: