Still working on checkExpression, which may or may not end up being an exported function (it may end up being an internal package function).