```r require(data.table) options(datatable.auto.index=FALSE) dt <- data.table(x=1, y="a") val <- c(foo=1L) dt[x == val] # returns wrong result # Empty data.table (0 rows) of 2 cols: x,y dt[x == unname(val)] # x y # 1: 1 a ```