The R Project SVN R

Rev

Rev 42208 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 42208 Rev 42736
Line 98... Line 98...
98
    SEXP context = getParseContext();
98
    SEXP context = getParseContext();
99
    int len = length(context);
99
    int len = length(context);
100
    char filename[128];
100
    char filename[128];
101
    if (linenum) {
101
    if (linenum) {
102
    	getParseFilename(filename, sizeof(filename)-2);
102
    	getParseFilename(filename, sizeof(filename)-2);
103
    	if (strlen(filename)) strcpy(filename + strlen(filename), ": ");
-
 
104
 
103
 
105
	switch (len) {
104
	switch (len) {
106
	case 0:
105
	case 0:
107
	    error(_("%s%s on line %d"),
106
	    error("%s:%d: %s",
108
		  filename, R_ParseErrorMsg, linenum);
107
		  filename, linenum, R_ParseErrorMsg);
109
	    break;
108
	    break;
110
	case 1:
109
	case 1:
111
	    error(_("%s%s at\n%d: %s"),
110
	    error("%s:%d: %s\n%d: %s",
112
		  filename, R_ParseErrorMsg, linenum,
111
		  filename, linenum, R_ParseErrorMsg, linenum,
113
		  CHAR(STRING_ELT(context, 0)));
112
		  CHAR(STRING_ELT(context, 0)));
114
	    break;
113
	    break;
115
	default:
114
	default:
116
	    error(_("%s%s at\n%d: %s\n%d: %s"),
115
	    error("%s:%d: %s\n%d: %s\n%d: %s",
117
		  filename, R_ParseErrorMsg, linenum-1,
116
		  filename, linenum, R_ParseErrorMsg, linenum-1,
118
		  CHAR(STRING_ELT(context, len-2)),
117
		  CHAR(STRING_ELT(context, len-2)),
119
		      linenum, CHAR(STRING_ELT(context, len-1)));
118
		      linenum, CHAR(STRING_ELT(context, len-1)));
120
	    break;
119
	    break;
121
	}
120
	}
122
    } else {
121
    } else {