X-Git-Url: https://git.m6w6.name/?p=m6w6%2Fext-psi;a=blobdiff_plain;f=psi.d%2Fstdlib.psi;h=42212dc24943e245a6a41b7ffd814e2346b634e2;hp=11fa602eb3bac79f6d79f93af800ba62ceb27d83;hb=01147b369f0fde8119074435b296bd8197489088;hpb=b78637d9020222f1032349f231c0dc84a69797bc diff --git a/psi.d/stdlib.psi b/psi.d/stdlib.psi index 11fa602..42212dc 100644 --- a/psi.d/stdlib.psi +++ b/psi.d/stdlib.psi @@ -1,3 +1,7 @@ +#ifdef __linux__ +lib "crypt"; +#endif + #include function psi\abs(int $i) : int { @@ -17,7 +21,7 @@ function psi\ldiv(int $numerator, int $denominator) : array { let numerator = intval($numerator); let denominator = intval($denominator); pre_assert denominator != 0; - return ldiv(numerator, denominator) + return ldiv(numerator, denominator) as to_array(ldiv, to_int(quot), to_int(rem)); } @@ -25,14 +29,14 @@ function psi\lldiv(int $numerator, int $denominator) : array { let numerator = intval($numerator); let denominator = intval($denominator); pre_assert denominator != 0; - return lldiv(numerator, denominator) + return lldiv(numerator, denominator) as to_array(lldiv, to_int(quot), to_int(rem)); } function psi\strtold(string $str, string &$end = null) : float { let nptr = strval($str); let endptr = &NULL; - return strtold(nptr, endptr) + return strtold(nptr, endptr) as to_float(strtold); set $end = to_string(*endptr); } @@ -60,4 +64,4 @@ function psi\realloc(object $obj, int $size) : object { let size = intval($size); pre_assert size >= 0; return realloc(ptr, size) as to_object(realloc); -} +}