diff --git a/NEWS.md b/NEWS.md index 5d9e163ad..c938df0ce 100644 --- a/NEWS.md +++ b/NEWS.md @@ -66,6 +66,8 @@ 6. Enhanced tests for OpenMP support, detecting incompatibilities such as R-bundled runtime _vs._ newer Xcode and testing for a manually installed runtime from , [#6622](https://github.com/Rdatatable/data.table/issues/6622). Thanks to @dvg-p4 for initial report and testing, @twitched for the pointers, @tdhock and @aitap for the fix. +7. `integer64` type from {bit64} now has `INTEGER64` and `INTEGER64_RO` accessors in `src/data.table.h` to avoid direct casts and inconsistency issues, providing a standardized accessor to improve readability, [#7618](https://github.com/Rdatatable/data.table/issues/7618). Thanks @MichaelChirico and @ben-schwen for the report, @aksh08022006 and @aitap for assistance, and @brycepanza, @cjl525, @ProjectsByFerm, and @lacyhamilton for the fix. + ## data.table [v1.18.2.1](https://github.com/Rdatatable/data.table/milestone/44?closed=1) (22 January 2026) ### BUG FIXES diff --git a/src/data.table.h b/src/data.table.h index c561b1732..471aa22c6 100644 --- a/src/data.table.h +++ b/src/data.table.h @@ -21,6 +21,8 @@ #endif #include #define SEXPPTR_RO(x) ((const SEXP *)DATAPTR_RO(x)) // to avoid overhead of looped STRING_ELT and VECTOR_ELT +#define INTEGER64(x) ((int64_t *)REAL(x)) +#define INTEGER64_RO(x) ((const int64_t *)REAL_RO(x)) #include // for uint64_t rather than unsigned long long #include // for va_list, va_start #include