This is from the examples:
qplot(mpg, wt, data=mtcars) + ylim(0, 10)
# All data is outside y limits - Error
qplot(mpg, wt, data=mtcars) + ylim(10, 20)
# Error: Discrete value supplied to continuous scale
I think this should be simple fix: make censor return NA_real_ instead of NA (which is logical, and hence counted as discrete). Even better you should return an NA of the same type as x - but I don't know an easy way of doing that.
Change na.value for continous scale to NA_real_. Fixes #627