diff options
-rw-r--r-- | src/library.js | 6 | ||||
-rw-r--r-- | tests/runner.py | 3 |
2 files changed, 9 insertions, 0 deletions
diff --git a/src/library.js b/src/library.js index 32a809fe..2a4a5e7d 100644 --- a/src/library.js +++ b/src/library.js @@ -3382,6 +3382,12 @@ LibraryManager.library = { return __parseInt(str, endptr, base, 0, 18446744073709551615, 64, true); // ULONG_MAX; imprecise. }, + atof: function(ptr) { + var str = Pointer_stringify(ptr); + var ret = parseFloat(str); + return isNaN(ret) ? 0 : ret; + }, + qsort__deps: ['memcpy'], qsort: function(base, num, size, comparator) { if (num == 0 || size == 0) return; diff --git a/tests/runner.py b/tests/runner.py index 7361f978..d5489dd6 100644 --- a/tests/runner.py +++ b/tests/runner.py @@ -2882,6 +2882,7 @@ at function.:blag src = r''' #include <stdio.h> #include <string.h> + #include <stdlib.h> int main () { #define CHECK(str) \ @@ -2896,6 +2897,8 @@ at function.:blag CHECK("en-r"); CHECK("en 3"); + printf("%f, %f\n", atof("1.234567"), atof("cheez")); + return 0; } ''' |