1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/missing/nan.c
shyouhei 4680cecd57 [ci skip] tabify
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61972 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-20 04:18:09 +00:00

28 lines
604 B
C

#include "ruby/missing.h"
#include <assert.h>
#include <stdlib.h>
#include <string.h>
double
nan(const char *spec)
{
#if 0
/* FIXME: we have not yet seen any situation this is
* necessary. Please write a proper implementation that
* covers this branch. */
if (spec && spec[0]) {
double generated_nan;
int len = snprintf(NULL, 0, "NAN(%s)", spec);
char *buf = malloc(len + 1); /* +1 for NUL */
sprintf(buf, "NAN(%s)", spec);
generated_nan = strtod(buf, NULL);
free(buf);
return generated_nan;
}
else
#endif
{
assert(!spec || !spec[0]);
return (double)NAN;
}
}