Is listed as pass, but should fail, because `X` could be `atom()`? All checkers agree that this should fail. ``` -spec foo(atom() | list()) -> integer(). foo(X) -> [ _ | _ ] = X, length(X). % X has type list() here ```