allow an expression as the optional message in `assert`. fixes #5267