title: `dplyr::case_when` Evaluation error: object 'x' not found
body: <p>Does anyone know why <code>dplyr::case_when()</code> produces the error in the following code?</p>
  
  <pre><code>tibble(tmp1 = sample(c(T, F), size = 32, replace = T),
         tmp2 = sample(c(T, F), size = 32, replace = T),
         tmp3 = sample(c(T, F), size = 32, replace = T)) %&gt;%
    mutate(tmp = apply(cbind(tmp1, tmp2, tmp3), 1, function(x) {
      case_when(
        all(x == F) ~ "N",
        any(x == T) ~ "Y"
      )
    }))
  
  Error in mutate_impl(.data, dots) : 
    Evaluation error: object 'x' not found.
  </code></pre>
  
  <p>I am using R 3.4.3 with dplyr 0.7.4 on Ubuntu 16.04.</p>
  
  <p>The error message is quite confusing, since the following code works fine, which indicates that <code>x</code> is not missing:</p>
  
  <pre><code>tibble(tmp1 = sample(c(T, F), size = 32, replace = T),
         tmp2 = sample(c(T, F), size = 32, replace = T),
         tmp3 = sample(c(T, F), size = 32, replace = T)) %&gt;%
    mutate(tmp = apply(cbind(tmp1, tmp2, tmp3), 1, function(x) {
      if (all(x == F)) {
        "N"
      } else if(any(x == T)) {
        "Y"
      }
    }))
  </code></pre>
  
  <p>Just for reference, the following code also works fine:</p>
  
  <pre><code>cbind(tmp1 = sample(c(T, F), size = 32, replace = T),
        tmp2 = sample(c(T, F), size = 32, replace = T),
        tmp3 = sample(c(T, F), size = 32, replace = T)) %&gt;%
    apply(1, function(x) {
      case_when(
        all(x == F) ~ "N",
        any(x == T) ~ "Y"
      )
    })
  </code></pre>