Is x declared as a symbolic variable? quad() cannot process symbolic expressions as the function.
If x is not a symbolic variable, then what is it? vectorize() can only be applied to character strings, inline objects, or function handles.
quad('x^2',1,4)
would be valid syntax, but would run in to problems because quad needs the expression to be able to handle vectors.
quad('x.^2',1,4)
would be valid.