On R 3.5.2 and while trying to convert string to double, the output is wrong,
# this is just to avoid scientific notation.
options(scipen=999)
temp <- "2671768011130961018032700237"
as.numeric(temp)
# and the output is,
2671768011130961013860062868
as.double(temp)
# and the output is
2671768011130961013860062868
as.numeric(temp) == 2671768011130961018032700237
# this returns true
print(.Machine$double.xmax)
# and to check the overflow case, this prints out 179769313486231570838400602864442228000008602082842266064064680402680408280648240046204888888288080622822420842246006644866884860462806420066668022046626024066662068886808602862886866800048228686262462640668044406484606206082824406288200264266406808068464046840608044222802268424008466606886862062820068082688
Can't think of anything which could have cause this behaviour. Any help is appreciated.