Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closes #5510: undefined behaviour #5832
Closes #5510: undefined behaviour #5832
Changes from 20 commits
0471c4d
e3c6a78
90b167e
47c87fd
772906d
c1bf61c
2d76efd
f0238b4
7696ea3
61ce9dd
e9f9ba1
e00a553
9d05feb
a27ccf2
50056ef
cd73555
d32470e
46cf79c
3e2f1c3
7701738
b269b39
6f2769f
File filter
Filter by extension
Conversations
Jump to
There are no files selected for viewing
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I see
!ISNAN(.) && (!within(.) || (int).!=.)
(or its inverse) repeated several times, maybe that should be its own helper?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remind me,
R_FINITE(NA_real_)
givesFALSE
right? Just wondering for below infirstNonInt
, how we can get(int)x==NA_INTEGER
after the first two tests, is that last condition redundant?If it's redundant, remove it, otherwise, make sure we have a regression test in place for that edge case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is
data.table:::coerceAs(-2^31, NA_integer_)
intended to emit a warning? Under this pull request a warning will be emitted where it wasn't before, though this is inconsistent with base R.as.integer(-2^31)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
actually not sure if warning is expected, we need to check if some tests are failing if we add this warning now. this function is meant to be use internally as well, and then raising warnings may be less desired.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As far as I can see, the only circumstance this comes up is for the peculiar:
That is, setting fill to the double value that is the same as
NA_INTEGER
. I don't see any good reason that this would be done, intentionally or otherwise.