In reply to GERALD ZUCKIER. Thanks for the tip. Syntax errors are caught when the view compiles, but data-dependent runtime errors can occur when the view runs. For example, the following DATA view does not contain any syntax errors, so it compiles. However, if the data set on the SET statement contains any observations for which Age<=13, the program will report "Invalid argument to LOG" for each observation at runtime:

data V / view=V;
set sashelp.class;
y = Age - 13; /* y< =0 when Age=13 */
z = log(y); /* domain error when y<=0 */
run;

proc means data=V; /* get error here because view runs */
run;