tidyverse / dplyr

dplyr: A grammar of data manipulation
https://dplyr.tidyverse.org/
Other
4.75k stars 2.12k forks source link

Missing template arguments before ')' token #865

Closed mwillumz closed 9 years ago

mwillumz commented 9 years ago

The following compliation error was introduced in commit "joins creates correctly named results. closes #855"

In file included from ../inst/include/dplyr.h:147,
from RcppExports.cpp:4:
../inst/include/dplyr/JoinVisitorImpl.h: In member function 'virtual void dplyr::JoinFactorFactorVisitor::debug()':
../inst/include/dplyr/JoinVisitorImpl.h:438: error: missing template arguments before ')' token
make: *** [RcppExports.o] Error 1
ERROR: compilation failed for package 'dplyr'
Error: Command failed (1)
hadley commented 9 years ago

I can't reproduce this on mac or linux. Can you please give more info about your compiler setup?

romainfrancois commented 9 years ago

If this still is a problem we can remove these debug merhods altogetger. They are just intermediate debugging leftovers.

stevencb commented 9 years ago

I ran into this same problem on Linux (CentOS 6.5) but need to gather the info to post. I will try to get this together today.

hadley commented 9 years ago

Compiler version would probably be helpful - @romainfrancois maybe you used a C++11ism?

stevencb commented 9 years ago

Hi

See below but is there anything else I can pass along to help ?

Here is a snippet of what I did and the output. I have omitted most of the details but included the error. I set R_LIBS to a temporary location to have a clean install of the packages.

First, here is the g++ version and session info info (please let me know if there is something else I can include):

$ g++ --version
g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

> sessionInfo()
R version 3.1.2 (2014-10-31)
Platform: x86_64-redhat-linux-gnu (64-bit)

locale:
 [1] LC_CTYPE=en_US.UTF-8       LC_NUMERIC=C              
 [3] LC_TIME=en_US.UTF-8        LC_COLLATE=en_US.UTF-8    
 [5] LC_MONETARY=en_US.UTF-8    LC_MESSAGES=en_US.UTF-8   
 [7] LC_PAPER=en_US.UTF-8       LC_NAME=C                 
 [9] LC_ADDRESS=C               LC_TELEPHONE=C            
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C       

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] bitops_1.0-6   devtools_1.6.1 httr_0.6.1     RCurl_1.95-4.5 stringr_0.6.2 
[6] tools_3.1.2   

> install.packages("devtools")
...
> devtools::install_github("hadley/lazyeval")
...
> devtools::install_github("hadley/dplyr")
...

The downloaded source packages are in
    ‘/tmp/RtmpnYnWsj/downloaded_packages’
'/usr/lib64/R/bin/R' --vanilla CMD INSTALL  \
  '/tmp/RtmpnYnWsj/devtoolsa54c0365b7/hadley-dplyr-709366d'  \
  --library='/tmp/stevecb/Rpackages' --install-tests 

* installing *source* package ‘dplyr’ ...
** libs
g++ -m64 -I/usr/include/R -DNDEBUG -I../inst/include -DCOMPILING_DPLYR -I/usr/local/include -I"/tmp/stevecb/Rpackages/Rcpp/include" -I"/tmp/stevecb/Rpackages/BH/include"   -fpic  -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic  -c RcppExports.cpp -o RcppExports.o
In file included from ../inst/include/dplyr.h:147,
                 from RcppExports.cpp:4:
../inst/include/dplyr/JoinVisitorImpl.h: In member function ‘virtual void dplyr::JoinFactorFactorVisitor::debug()’:
../inst/include/dplyr/JoinVisitorImpl.h:438: error: missing template arguments before ‘)’ token
make: *** [RcppExports.o] Error 1
ERROR: compilation failed for package ‘dplyr’
* removing ‘/tmp/stevecb/Rpackages/dplyr’
Error: Command failed (1)

Thanks.

mwillumz commented 9 years ago

I'm on Scientific Linux 6.5 (red hat) with the same GCC version as stevencb.

Please also let me know if you'd like more info but the above by stevencb is identical to what I'm seeing.

stevencb commented 9 years ago

Here is a little more about the system I am working on: GNU/Linux: 2.6.32-431.17.1.el6.x86_64

To see if the missing template argument error was the only error, I commented out line 438 in "JoinVisitorImpl.h" (the problem line), and built deployer successfully from within R ( 'devtools::install_local(path = "~/Download/dplyr/dplyr-master-mod.zip")' ). I did see some warnings during the build process which were unrelated; would it be helpful for me to send these along ?

will0955, I can post the details of what I did if you just want to get it to build. However, I suspect this will get fixed really quickly in GitHub.