CARVIEW |
Select Language
HTTP/2 200
date: Sun, 27 Jul 2025 05:54:19 GMT
content-type: text/html; charset=utf-8
cache-control: max-age=0, private, must-revalidate
content-security-policy: default-src 'none'; base-uri 'self'; child-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/; connect-src 'self' uploads.github.com www.githubstatus.com collector.github.com raw.githubusercontent.com api.github.com github-cloud.s3.amazonaws.com github-production-repository-file-5c1aeb.s3.amazonaws.com github-production-upload-manifest-file-7fdce7.s3.amazonaws.com github-production-user-asset-6210df.s3.amazonaws.com *.rel.tunnels.api.visualstudio.com wss://*.rel.tunnels.api.visualstudio.com objects-origin.githubusercontent.com copilot-proxy.githubusercontent.com proxy.individual.githubcopilot.com proxy.business.githubcopilot.com proxy.enterprise.githubcopilot.com *.actions.githubusercontent.com wss://*.actions.githubusercontent.com productionresultssa0.blob.core.windows.net/ productionresultssa1.blob.core.windows.net/ productionresultssa2.blob.core.windows.net/ productionresultssa3.blob.core.windows.net/ productionresultssa4.blob.core.windows.net/ productionresultssa5.blob.core.windows.net/ productionresultssa6.blob.core.windows.net/ productionresultssa7.blob.core.windows.net/ productionresultssa8.blob.core.windows.net/ productionresultssa9.blob.core.windows.net/ productionresultssa10.blob.core.windows.net/ productionresultssa11.blob.core.windows.net/ productionresultssa12.blob.core.windows.net/ productionresultssa13.blob.core.windows.net/ productionresultssa14.blob.core.windows.net/ productionresultssa15.blob.core.windows.net/ productionresultssa16.blob.core.windows.net/ productionresultssa17.blob.core.windows.net/ productionresultssa18.blob.core.windows.net/ productionresultssa19.blob.core.windows.net/ github-production-repository-image-32fea6.s3.amazonaws.com github-production-release-asset-2e65be.s3.amazonaws.com insights.github.com wss://alive.github.com api.githubcopilot.com api.individual.githubcopilot.com api.business.githubcopilot.com api.enterprise.githubcopilot.com; font-src github.githubassets.com; form-action 'self' github.com gist.github.com copilot-workspace.githubnext.com objects-origin.githubusercontent.com; frame-ancestors 'none'; frame-src viewscreen.githubusercontent.com notebooks.githubusercontent.com; img-src 'self' data: blob: github.githubassets.com media.githubusercontent.com camo.githubusercontent.com identicons.github.com avatars.githubusercontent.com private-avatars.githubusercontent.com github-cloud.s3.amazonaws.com objects.githubusercontent.com release-assets.githubusercontent.com secured-user-images.githubusercontent.com/ user-images.githubusercontent.com/ private-user-images.githubusercontent.com opengraph.githubassets.com copilotprodattachments.blob.core.windows.net/github-production-copilot-attachments/ github-production-user-asset-6210df.s3.amazonaws.com customer-stories-feed.github.com spotlights-feed.github.com objects-origin.githubusercontent.com *.githubusercontent.com; manifest-src 'self'; media-src github.com user-images.githubusercontent.com/ secured-user-images.githubusercontent.com/ private-user-images.githubusercontent.com github-production-user-asset-6210df.s3.amazonaws.com gist.github.com; script-src github.githubassets.com; style-src 'unsafe-inline' github.githubassets.com; upgrade-insecure-requests; worker-src github.githubassets.com github.com/assets-cdn/worker/ github.com/assets/ gist.github.com/assets-cdn/worker/
link: ; rel=preload; as=fetch; crossorigin=use-credentials
referrer-policy: no-referrer-when-downgrade
server-timing: issue_layout-fragment;desc="issue_layout fragment";dur=232.658791,issue_conversation_content-fragment;desc="issue_conversation_content fragment";dur=1307.790634,issue_conversation_sidebar-fragment;desc="issue_conversation_sidebar fragment";dur=45.926644,nginx;desc="NGINX";dur=0.574879,glb;desc="GLB";dur=101.202894
strict-transport-security: max-age=31536000; includeSubdomains; preload
vary: X-PJAX, X-PJAX-Container, Turbo-Visit, Turbo-Frame, X-Requested-With, Accept,Accept-Encoding, Accept, X-Requested-With
x-content-type-options: nosniff
x-frame-options: deny
x-voltron-version: a2eb102
x-xss-protection: 0
server: github.com
content-encoding: gzip
accept-ranges: bytes
set-cookie: _gh_sess=rqmwbXXogXnR7B%2FfUgLdruX6TN3l2uH%2BCkk8xsuNYD8%2FM%2FEc%2BLhwyshpo3r2e5ljH4l6rAa3UqdKL65sQHomG5PlyplFvuxdwir3UyoHsWXSnjwJAKeAQEljGy%2Bsfjb6G58leaNBP5Lfrojk0jrEJtKDuLlmxodurwWHwzBNIAhguZa5p03%2BYLJX0YRRqt%2B8gnlnWMcn4a10GeBcu7b%2FUqRvDZBmG1Z7oNB5XlrFfocBr%2FnZfW6k%2BeM1pcrRebqnbPEg2Uj9Hi1ZjZjwjUQd7w%3D%3D--YtNzO55pcdHR9QLj--t8F1wa9Bt0uO54yTbNlq5g%3D%3D; Path=/; HttpOnly; Secure; SameSite=Lax
set-cookie: _octo=GH1.1.1550991099.1753595658; Path=/; Domain=github.com; Expires=Mon, 27 Jul 2026 05:54:18 GMT; Secure; SameSite=Lax
set-cookie: logged_in=no; Path=/; Domain=github.com; Expires=Mon, 27 Jul 2026 05:54:18 GMT; HttpOnly; Secure; SameSite=Lax
x-github-request-id: A17C:32A0BD:1C3883:28FC5B:6885BF0A
openMP Mac install not working · Issue #1692 · Rdatatable/data.table · GitHub
No one assignedNo typeNo projectsNo milestoneNone yetNo branches or pull requests
Skip to content
Navigation Menu
{{ message }}
-
Notifications
You must be signed in to change notification settings - Fork 1k
Closed
Labels
Description
I've been trying to get timing comparisons of various file IO functions today and managed to get everything working except the OpenMP implementation of fwrite(). When I run fwrite() in my benchmark I get the following:
library(data.table)
set.seed(3-29-16)
rows <- 100000
x <- data.frame(ints = round(runif(rows, -100, 100)), stringsAsFactors = FALSE)
x$floats <- runif(rows, -100, 100)
x$bools <- sample(c(TRUE, FALSE), rows, replace = TRUE)
x$dates <- as.POSIXct(runif(rows, 100000000, 1459293171), origin = "1970-01-01")
x$categories <- as.factor(sample(c(LETTERS, 0:9), rows, replace = TRUE))
x$strings <- replicate(rows, paste0(sample(letters, sample(1:10, 1), replace = TRUE), collapse = ""))
DTCSV =fwrite(x, "x.DT.csv")
#Your platform/environment has not detected OpenMP support. fwrite() will still work, but slower in single threaded mode.
I followed the instructions here: https://github.com/Rdatatable/data.table/wiki/Installation
Created a Makevar file in ~/.R/ with the following flags:
cat ~/.R/Makevars
CC=clang-omp -fopenmp
CXX=clang-omp++ -fopenmp
Running the script above after installation and creation of Makevar file gives the above message.
When I tried to reinstall Rcpp or data.table from source (hoping that it would compile against the OpenMP capable compilier) I get an error.
install.packages("data.table", type = "source",
repos = "https://Rdatatable.github.io/data.table")
trying URL 'https://Rdatatable.github.io/data.table/src/contrib/data.table_1.9.7.tar.gz'
Content type 'application/octet-stream' length 2721566 bytes (2.6 MB)
==================================================
downloaded 2.6 MB
* installing *source* package ‘data.table’ ...
** libs
clang-omp -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c assign.c -o assign.o
In file included from assign.c:1:
In file included from ./data.table.h:1:
/Library/Frameworks/R.framework/Resources/include/R.h:45:12: fatal error: 'stdlib.h' file not found
# include <stdlib.h> /* Not used by R itself, but widely assumed in packages */
^
1 error generated.
The downloaded source packages are in
‘/private/var/folders/zg/hy0k4g312536_4l1qc1w27640000gn/T/RtmpXM09oF/downloaded_packages’
make: *** [assign.o] Error 1
ERROR: compilation failed for package ‘data.table’
* removing ‘/Library/Frameworks/R.framework/Versions/3.3/Resources/library/data.table’
* restoring previous ‘/Library/Frameworks/R.framework/Versions/3.3/Resources/library/data.table’
Warning message:
In install.packages("data.table", type = "source", repos = "https://Rdatatable.github.io/data.table") :
installation of package ‘data.table’ had non-zero exit status
#############################
install.packages("Rcpp", type = "source")
trying URL 'https://cran.rstudio.com/src/contrib/Rcpp_0.12.4.tar.gz'
Content type 'application/x-gzip' length 2402065 bytes (2.3 MB)
==================================================
downloaded 2.3 MB
* installing *source* package ‘Rcpp’ ...
** package ‘Rcpp’ successfully unpacked and MD5 sums checked
** libs
clang-omp++ -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I../inst/include/ -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c Date.cpp -o Date.o
In file included from Date.cpp:31:
In file included from ../inst/include/Rcpp.h:27:
In file included from ../inst/include/RcppCommon.h:29:
In file included from ../inst/include/Rcpp/r/headers.h:48:
In file included from ../inst/include/Rcpp/platform/compiler.h:100:
/usr/local/Cellar/clang-omp/2015-04-01/libexec/bin/../include/c++/v1/cmath:301:10: fatal error: 'math.h' file not found
#include <math.h>
^
1 error generated.
make: *** [Date.o] Error 1
ERROR: compilation failed for package ‘Rcpp’
* removing ‘/Library/Frameworks/R.framework/Versions/3.3/Resources/library/Rcpp’
The downloaded source packages are in
‘/private/var/folders/zg/hy0k4g312536_4l1qc1w27640000gn/T/RtmpXM09oF/downloaded_packages’
Warning message:
In install.packages("Rcpp", type = "source") :
installation of package ‘Rcpp’ had non-zero exit status
* restoring previous ‘/Library/Frameworks/R.framework/Versions/3.3/Resources/library/Rcpp’
I googled around and found that g++-5 on homebrew comes with openMP so I tapped it. Rcpp compiles, but then data.table does not.
cat ~/.R/Makevars
CC=g++-5 -fopenmp
CXX=g++-5 -fopenmp
install.packages("Rcpp", type = "source")
trying URL 'https://cran.rstudio.com/src/contrib/Rcpp_0.12.4.tar.gz'
Content type 'application/x-gzip' length 2402065 bytes (2.3 MB)
==================================================
downloaded 2.3 MB
* installing *source* package ‘Rcpp’ ...
** package ‘Rcpp’ successfully unpacked and MD5 sums checked
** libs
g++-5 -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I../inst/include/ -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c Date.cpp -o Date.o
g++-5 -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I../inst/include/ -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c Module.cpp -o Module.o
g++-5 -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I../inst/include/ -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c Rcpp_init.cpp -o Rcpp_init.o
g++-5 -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I../inst/include/ -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c api.cpp -o api.o
g++-5 -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I../inst/include/ -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c attributes.cpp -o attributes.o
g++-5 -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I../inst/include/ -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c barrier.cpp -o barrier.o
g++-5 -fopenmp -dynamiclib -Wl,-headerpad_max_install_names -undefined dynamic_lookup -single_module -multiply_defined suppress -L/Library/Frameworks/R.framework/Resources/lib -L/usr/local/lib -o Rcpp.so Date.o Module.o Rcpp_init.o api.o attributes.o barrier.o -F/Library/Frameworks/R.framework/.. -framework R -Wl,-framework -Wl,CoreFoundation
installing to /Library/Frameworks/R.framework/Versions/3.3/Resources/library/Rcpp/libs
** R
** inst
** preparing package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (Rcpp)
The downloaded source packages are in
‘/private/var/folders/zg/hy0k4g312536_4l1qc1w27640000gn/T/RtmpXM09oF/downloaded_packages’
############################
install.packages("data.table", type = "source",
repos = "https://Rdatatable.github.io/data.table")
trying URL 'https://Rdatatable.github.io/data.table/src/contrib/data.table_1.9.7.tar.gz'
Content type 'application/octet-stream' length 2721566 bytes (2.6 MB)
==================================================
downloaded 2.6 MB
* installing *source* package ‘data.table’ ...
** libs
g++-5 -fopenmp -I/Library/Frameworks/R.framework/Resources/include -DNDEBUG -I/usr/local/include -I/usr/local/include/freetype2 -I/opt/X11/include -fPIC -Wall -mtune=core2 -g -O2 -c assign.c -o assign.o
In file included from assign.c:1:0:
data.table.h:73:29: error: two or more data types in declaration of 'parameter'
SEXP which(SEXP x, Rboolean bool);
^
assign.c: In function 'int _selfrefok(SEXP, Rboolean, Rboolean)':
assign.c:115:26: error: invalid conversion from 'void*' to 'SEXP {aka SEXPREC*}' [-fpermissive]
p = R_ExternalPtrAddr(v);
^
The downloaded source packages are in
‘/private/var/folders/zg/hy0k4g312536_4l1qc1w27640000gn/T/RtmpXM09oF/downloaded_packages’
Warning message:
In install.packages("data.table", type = "source", repos = "https://Rdatatable.github.io/data.table") :
installation of package ‘data.table’ had non-zero exit status
assign.c: In function 'Rboolean selfrefok(SEXP, Rboolean)':
assign.c:137:44: error: cannot convert 'bool' to 'Rboolean' in return
return(_selfrefok(x, FALSE, verbose)==1);
^
assign.c: In function 'Rboolean selfrefnamesok(SEXP, Rboolean)':
assign.c:140:43: error: cannot convert 'bool' to 'Rboolean' in return
return(_selfrefok(x, TRUE, verbose)==1);
^
assign.c: In function 'SEXPREC* alloccol(SEXP, R_len_t, Rboolean)':
assign.c:195:17: error: expected unqualified-id before 'class'
SEXP names, class;
^
assign.c:199:5: error: expected primary-expression before 'class'
class = getAttrib(dt, R_ClassSymbol);
^
In file included from data.table.h:3:0,
from assign.c:1:
assign.c:200:16: error: expected primary-expression before 'class'
if (isNull(class)) error("dt passed to alloccol has no class attribute. Please report result of traceback() to datatable-help.");
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:303:21: note: in definition of macro 'TYPEOF'
#define TYPEOF(x) ((x)->sxpinfo.type)
^
assign.c:200:9: note: in expansion of macro 'isNull'
if (isNull(class)) error("dt passed to alloccol has no class attribute. Please report result of traceback() to datatable-help.");
^
assign.c:200:16: error: expected ')' before 'class'
if (isNull(class)) error("dt passed to alloccol has no class attribute. Please report result of traceback() to datatable-help.");
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:303:21: note: in definition of macro 'TYPEOF'
#define TYPEOF(x) ((x)->sxpinfo.type)
^
assign.c:200:9: note: in expansion of macro 'isNull'
if (isNull(class)) error("dt passed to alloccol has no class attribute. Please report result of traceback() to datatable-help.");
^
assign.c:200:133: error: expected ')' before ';' token
if (isNull(class)) error("dt passed to alloccol has no class attribute. Please report result of traceback() to datatable-help.");
^
assign.c:200:133: error: expected ')' before ';' token
assign.c:200:133: error: expected ')' before ';' token
In file included from data.table.h:3:0,
from assign.c:1:
assign.c: In function 'SEXPREC* alloccolwrapper(SEXP, SEXP, SEXP)':
assign.c:227:76: error: invalid conversion from 'int' to 'Rboolean' [-fpermissive]
SEXP ans = PROTECT(alloccol(dt, INTEGER(newncol)[0], LOGICAL(verbose)[0]));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:661:31: note: in definition of macro 'PROTECT'
#define PROTECT(s) Rf_protect(s)
^
assign.c:193:6: note: initializing argument 3 of 'SEXPREC* alloccol(SEXP, R_len_t, Rboolean)'
SEXP alloccol(SEXP dt, R_len_t n, Rboolean verbose)
^
assign.c: In function 'Rboolean isDatatable(SEXP)':
assign.c:252:10: error: expected primary-expression before 'class'
SEXP class = getAttrib(x, R_ClassSymbol);
^
In file included from data.table.h:3:0,
from assign.c:1:
assign.c:253:28: error: expected primary-expression before 'class'
for (int i=0; i<length(class); i++) {
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:1222:30: note: in definition of macro 'length'
#define length(x) Rf_length(x)
^
assign.c:254:36: error: expected primary-expression before 'class'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) return(TRUE);
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:382:41: note: in definition of macro 'DATAPTR'
#define DATAPTR(x) (((SEXPREC_ALIGN *) (x)) + 1)
^
assign.c:254:20: note: in expansion of macro 'CHAR'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) return(TRUE);
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:389:35: note: in expansion of macro 'DATAPTR'
#define STRING_ELT(x,i) ((SEXP *) DATAPTR(x))[i]
^
assign.c:254:25: note: in expansion of macro 'STRING_ELT'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) return(TRUE);
^
assign.c:254:36: error: expected ')' before 'class'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) return(TRUE);
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:382:41: note: in definition of macro 'DATAPTR'
#define DATAPTR(x) (((SEXPREC_ALIGN *) (x)) + 1)
^
assign.c:254:20: note: in expansion of macro 'CHAR'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) return(TRUE);
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:389:35: note: in expansion of macro 'DATAPTR'
#define STRING_ELT(x,i) ((SEXP *) DATAPTR(x))[i]
^
assign.c:254:25: note: in expansion of macro 'STRING_ELT'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) return(TRUE);
^
assign.c:254:80: error: expected ')' before ';' token
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) return(TRUE);
^
assign.c:254:80: error: expected ')' before ';' token
assign.c:254:80: error: expected ')' before ';' token
assign.c:254:80: error: expected ')' before ';' token
assign.c:254:80: error: expected ')' before ';' token
assign.c:254:80: error: expected ')' before ';' token
assign.c:254:80: error: expected ')' before ';' token
assign.c:254:80: error: expected ')' before ';' token
assign.c: In function 'SEXPREC* selfrefokwrapper(SEXP, SEXP)':
assign.c:272:63: error: invalid conversion from 'int' to 'Rboolean' [-fpermissive]
return ScalarInteger(_selfrefok(x,FALSE,LOGICAL(verbose)[0]));
^
assign.c:104:12: note: initializing argument 3 of 'int _selfrefok(SEXP, Rboolean, Rboolean)'
static int _selfrefok(SEXP x, Rboolean checkNames, Rboolean verbose) {
^
assign.c: In function 'SEXPREC* assign(SEXP, SEXP, SEXP, SEXP, SEXP, SEXP)':
assign.c:285:93: error: expected unqualified-id before 'class'
SEXP targetcol, RHS, names, nullint, thisvalue, thisv, targetlevels, newcol, s, colnam, class, tmp, colorder, key, index, a;
^
assign.c:287:39: error: invalid conversion from 'int' to 'Rboolean' [-fpermissive]
Rboolean verbose = LOGICAL(verb)[0], anytodelete=FALSE, isDataTable=FALSE;
^
assign.c:297:5: error: expected primary-expression before 'class'
class = getAttrib(dt, R_ClassSymbol);
^
In file included from data.table.h:3:0,
from assign.c:1:
assign.c:298:16: error: expected primary-expression before 'class'
if (isNull(class)) error("Input passed to assign has no class attribute. Must be a data.table or data.frame.");
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:303:21: note: in definition of macro 'TYPEOF'
#define TYPEOF(x) ((x)->sxpinfo.type)
^
assign.c:298:9: note: in expansion of macro 'isNull'
if (isNull(class)) error("Input passed to assign has no class attribute. Must be a data.table or data.frame.");
^
assign.c:298:16: error: expected ')' before 'class'
if (isNull(class)) error("Input passed to assign has no class attribute. Must be a data.table or data.frame.");
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:303:21: note: in definition of macro 'TYPEOF'
#define TYPEOF(x) ((x)->sxpinfo.type)
^
assign.c:298:9: note: in expansion of macro 'isNull'
if (isNull(class)) error("Input passed to assign has no class attribute. Must be a data.table or data.frame.");
^
assign.c:298:115: error: expected ')' before ';' token
if (isNull(class)) error("Input passed to assign has no class attribute. Must be a data.table or data.frame.");
^
assign.c:298:115: error: expected ')' before ';' token
assign.c:298:115: error: expected ')' before ';' token
In file included from data.table.h:3:0,
from assign.c:1:
assign.c:303:24: error: expected primary-expression before 'class'
for (i=0; i<length(class); i++) { // There doesn't seem to be an R API interface to inherits(), but manually here isn't too bad.
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:1222:30: note: in definition of macro 'length'
#define length(x) Rf_length(x)
^
assign.c:304:36: error: expected primary-expression before 'class'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) break;
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:382:41: note: in definition of macro 'DATAPTR'
#define DATAPTR(x) (((SEXPREC_ALIGN *) (x)) + 1)
^
assign.c:304:20: note: in expansion of macro 'CHAR'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) break;
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:389:35: note: in expansion of macro 'DATAPTR'
#define STRING_ELT(x,i) ((SEXP *) DATAPTR(x))[i]
^
assign.c:304:25: note: in expansion of macro 'STRING_ELT'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) break;
^
assign.c:304:36: error: expected ')' before 'class'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) break;
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:382:41: note: in definition of macro 'DATAPTR'
#define DATAPTR(x) (((SEXPREC_ALIGN *) (x)) + 1)
^
assign.c:304:20: note: in expansion of macro 'CHAR'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) break;
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:389:35: note: in expansion of macro 'DATAPTR'
#define STRING_ELT(x,i) ((SEXP *) DATAPTR(x))[i]
^
assign.c:304:25: note: in expansion of macro 'STRING_ELT'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) break;
^
assign.c:304:73: error: expected ')' before ';' token
if (strcmp(CHAR(STRING_ELT(class, i)), "data.table") == 0) break;
^
assign.c:304:73: error: expected ')' before ';' token
assign.c:304:73: error: expected ')' before ';' token
assign.c:304:73: error: expected ')' before ';' token
assign.c:304:73: error: expected ')' before ';' token
assign.c:304:73: error: expected ')' before ';' token
assign.c:304:73: error: expected ')' before ';' token
assign.c:304:73: error: expected ')' before ';' token
In file included from data.table.h:3:0,
from assign.c:1:
assign.c:306:18: error: expected primary-expression before 'class'
if (i<length(class))
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:1222:30: note: in definition of macro 'length'
#define length(x) Rf_length(x)
^
assign.c:309:28: error: expected primary-expression before 'class'
for (i=0; i<length(class); i++) {
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:1222:30: note: in definition of macro 'length'
#define length(x) Rf_length(x)
^
assign.c:310:40: error: expected primary-expression before 'class'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.frame") == 0) break;
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:382:41: note: in definition of macro 'DATAPTR'
#define DATAPTR(x) (((SEXPREC_ALIGN *) (x)) + 1)
^
assign.c:310:24: note: in expansion of macro 'CHAR'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.frame") == 0) break;
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:389:35: note: in expansion of macro 'DATAPTR'
#define STRING_ELT(x,i) ((SEXP *) DATAPTR(x))[i]
^
assign.c:310:29: note: in expansion of macro 'STRING_ELT'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.frame") == 0) break;
^
assign.c:310:40: error: expected ')' before 'class'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.frame") == 0) break;
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:382:41: note: in definition of macro 'DATAPTR'
#define DATAPTR(x) (((SEXPREC_ALIGN *) (x)) + 1)
^
assign.c:310:24: note: in expansion of macro 'CHAR'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.frame") == 0) break;
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:389:35: note: in expansion of macro 'DATAPTR'
#define STRING_ELT(x,i) ((SEXP *) DATAPTR(x))[i]
^
assign.c:310:29: note: in expansion of macro 'STRING_ELT'
if (strcmp(CHAR(STRING_ELT(class, i)), "data.frame") == 0) break;
^
assign.c:310:77: error: expected ')' before ';' token
if (strcmp(CHAR(STRING_ELT(class, i)), "data.frame") == 0) break;
^
assign.c:310:77: error: expected ')' before ';' token
assign.c:310:77: error: expected ')' before ';' token
assign.c:310:77: error: expected ')' before ';' token
assign.c:310:77: error: expected ')' before ';' token
assign.c:310:77: error: expected ')' before ';' token
assign.c:310:77: error: expected ')' before ';' token
assign.c:310:77: error: expected ')' before ';' token
In file included from data.table.h:3:0,
from assign.c:1:
assign.c:312:25: error: expected primary-expression before 'class'
if (i == length(class)) error("Input is not a data.table, data.frame or an object that inherits from either.");
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:1222:30: note: in definition of macro 'length'
#define length(x) Rf_length(x)
^
assign.c:350:17: error: 'tmp' was not declared in this scope
PROTECT(tmp = chmatch(cols, names, 0, FALSE));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:661:31: note: in definition of macro 'PROTECT'
#define PROTECT(s) Rf_protect(s)
^
assign.c:598:54: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
if (isReal(thisvalue)) s3="; may have truncated precision"; else s3="";
^
assign.c:598:96: warning: deprecated conversion from string constant to 'char*' [-Wwrite-strings]
if (isReal(thisvalue)) s3="; may have truncated precision"; else s3="";
^
assign.c:607:5: error: 'key' was not declared in this scope
key = getAttrib(dt,install("sorted"));
^
In file included from data.table.h:3:0,
from assign.c:1:
assign.c:611:17: error: 'tmp' was not declared in this scope
PROTECT(tmp = allocVector(STRSXP, LENGTH(cols)));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:661:31: note: in definition of macro 'PROTECT'
#define PROTECT(s) Rf_protect(s)
^
assign.c:625:11: error: assignment of function 'char* index(const char*, int)'
index = getAttrib(dt,install("index"));
^
assign.c:625:11: error: cannot convert 'SEXP {aka SEXPREC*}' to 'char*(const char*, int)' in assignment
assign.c:626:18: error: comparison between distinct pointer types 'char* (*)(const char*, int)' and 'SEXP {aka SEXPREC*}' lacks a cast [-fpermissive]
if (index != R_NilValue) {
^
In file included from data.table.h:3:0,
from assign.c:1:
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:300:25: error: request for member 'attrib' in 'index', which is of non-class type 'char*(const char*, int)'
#define ATTRIB(x) ((x)->attrib)
^
assign.c:627:13: note: in expansion of macro 'ATTRIB'
s = ATTRIB(index);
^
assign.c:629:13: error: 'a' was not declared in this scope
a = TAG(s);
^
In file included from data.table.h:3:0,
from assign.c:1:
assign.c:666:17: error: 'colorder' was not declared in this scope
PROTECT(colorder = duplicate(cols));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:661:31: note: in definition of macro 'PROTECT'
#define PROTECT(s) Rf_protect(s)
^
assign.c: At global scope:
assign.c:876:42: error: expected ',' or '...' before 'new'
SEXP setcharvec(SEXP x, SEXP which, SEXP new)
^
In file included from data.table.h:3:0,
from assign.c:1:
assign.c: In function 'SEXPREC* setcharvec(SEXP, SEXP, SEXP)':
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:303:22: error: expected type-specifier before ')' token
#define TYPEOF(x) ((x)->sxpinfo.type)
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:1374:22: note: in expansion of macro 'TYPEOF'
#define isString(s) (TYPEOF(s) == STRSXP)
^
assign.c:881:10: note: in expansion of macro 'isString'
if (!isString(new)) error("'new' must be a character vector");
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:338:44: error: expected type-specifier before ')' token
# define SHORT_VEC_LENGTH(x) (((VECSEXP) (x))->vecsxp.length)
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:337:26: note: in expansion of macro 'SHORT_VEC_LENGTH'
# define IS_LONG_VEC(x) (SHORT_VEC_LENGTH(x) == R_LONG_VEC_TOKEN)
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:344:21: note: in expansion of macro 'IS_LONG_VEC'
# define LENGTH(x) (IS_LONG_VEC(x) ? R_BadLongVector(x, __FILE__, __LINE__) : SHORT_VEC_LENGTH(x))
^
assign.c:882:9: note: in expansion of macro 'LENGTH'
if (LENGTH(new)!=LENGTH(which)) error("'new' is length %d. Should be the same as length of 'which' (%d)",LENGTH(new),LENGTH(which));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:344:55: error: expected type-specifier before ',' token
# define LENGTH(x) (IS_LONG_VEC(x) ? R_BadLongVector(x, __FILE__, __LINE__) : SHORT_VEC_LENGTH(x))
^
assign.c:882:9: note: in expansion of macro 'LENGTH'
if (LENGTH(new)!=LENGTH(which)) error("'new' is length %d. Should be the same as length of 'which' (%d)",LENGTH(new),LENGTH(which));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:338:44: error: expected type-specifier before ')' token
# define SHORT_VEC_LENGTH(x) (((VECSEXP) (x))->vecsxp.length)
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:344:79: note: in expansion of macro 'SHORT_VEC_LENGTH'
# define LENGTH(x) (IS_LONG_VEC(x) ? R_BadLongVector(x, __FILE__, __LINE__) : SHORT_VEC_LENGTH(x))
^
assign.c:882:9: note: in expansion of macro 'LENGTH'
if (LENGTH(new)!=LENGTH(which)) error("'new' is length %d. Should be the same as length of 'which' (%d)",LENGTH(new),LENGTH(which));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:338:44: error: expected type-specifier before ')' token
# define SHORT_VEC_LENGTH(x) (((VECSEXP) (x))->vecsxp.length)
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:337:26: note: in expansion of macro 'SHORT_VEC_LENGTH'
# define IS_LONG_VEC(x) (SHORT_VEC_LENGTH(x) == R_LONG_VEC_TOKEN)
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:344:21: note: in expansion of macro 'IS_LONG_VEC'
# define LENGTH(x) (IS_LONG_VEC(x) ? R_BadLongVector(x, __FILE__, __LINE__) : SHORT_VEC_LENGTH(x))
^
assign.c:882:110: note: in expansion of macro 'LENGTH'
if (LENGTH(new)!=LENGTH(which)) error("'new' is length %d. Should be the same as length of 'which' (%d)",LENGTH(new),LENGTH(which));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:344:55: error: expected type-specifier before ',' token
# define LENGTH(x) (IS_LONG_VEC(x) ? R_BadLongVector(x, __FILE__, __LINE__) : SHORT_VEC_LENGTH(x))
^
assign.c:882:110: note: in expansion of macro 'LENGTH'
if (LENGTH(new)!=LENGTH(which)) error("'new' is length %d. Should be the same as length of 'which' (%d)",LENGTH(new),LENGTH(which));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:338:44: error: expected type-specifier before ')' token
# define SHORT_VEC_LENGTH(x) (((VECSEXP) (x))->vecsxp.length)
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:344:79: note: in expansion of macro 'SHORT_VEC_LENGTH'
# define LENGTH(x) (IS_LONG_VEC(x) ? R_BadLongVector(x, __FILE__, __LINE__) : SHORT_VEC_LENGTH(x))
^
assign.c:882:110: note: in expansion of macro 'LENGTH'
if (LENGTH(new)!=LENGTH(which)) error("'new' is length %d. Should be the same as length of 'which' (%d)",LENGTH(new),LENGTH(which));
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:382:42: error: expected type-specifier before ')' token
#define DATAPTR(x) (((SEXPREC_ALIGN *) (x)) + 1)
^
/Library/Frameworks/R.framework/Resources/include/Rinternals.h:389:35: note: in expansion of macro 'DATAPTR'
#define STRING_ELT(x,i) ((SEXP *) DATAPTR(x))[i]
^
assign.c:886:32: note: in expansion of macro 'STRING_ELT'
SET_STRING_ELT(x, w-1, STRING_ELT(new, i));
^
make: *** [assign.o] Error 1
ERROR: compilation failed for package ‘data.table’
* removing ‘/Library/Frameworks/R.framework/Versions/3.3/Resources/library/data.table’
* restoring previous ‘/Library/Frameworks/R.framework/Versions/3.3/Resources/library/data.table’
Metadata
Metadata
Assignees
Labels
Type
Projects
Milestone
Relationships
Development
Issue actions
You can’t perform that action at this time.