diff options
author | Arnold D. Robbins <arnold@skeeve.com> | 2018-01-10 22:14:27 +0200 |
---|---|---|
committer | Arnold D. Robbins <arnold@skeeve.com> | 2018-01-10 22:14:27 +0200 |
commit | cc8c981c9eaed42e1afd278afac787cd2aeab55f (patch) | |
tree | 66daeb2dc1049a6112445705f6b92cea55958bd7 /test/mpfrrndeval.awk | |
parent | dd2516767fa58d56684e003f646ef6d611051a64 (diff) | |
parent | 7d463f19f1fc98a7d4f99e3575c545ca7009d9db (diff) | |
download | egawk-cc8c981c9eaed42e1afd278afac787cd2aeab55f.tar.gz egawk-cc8c981c9eaed42e1afd278afac787cd2aeab55f.tar.bz2 egawk-cc8c981c9eaed42e1afd278afac787cd2aeab55f.zip |
Merge branch 'master' into feature/fix-comments
Diffstat (limited to 'test/mpfrrndeval.awk')
-rw-r--r-- | test/mpfrrndeval.awk | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/test/mpfrrndeval.awk b/test/mpfrrndeval.awk new file mode 100644 index 00000000..12010052 --- /dev/null +++ b/test/mpfrrndeval.awk @@ -0,0 +1,35 @@ +# Tests side effects (like caching) on the evaluation (formatting and +# rounding) of MPFR variables vs literals. +BEGIN { + pi = 3.1416 + e = 2.7183 + golden = 1.6180 + + # Evaluated as number with (default) OFMT. + print pi + print e + print golden + printf "\n" + + # Evaluated as number with (custom) OFMT. + OFMT = "%.f" + ROUNDMODE = "U"; print "Variable pi U:", pi + ROUNDMODE = "D"; print "Variable pi D:", pi + ROUNDMODE = "U"; print "Literal pi U:", 3.1416 + ROUNDMODE = "D"; print "Literal pi D:", 3.1416 + printf "\n" + + # Evaluated as string with (custom) CONVFMT. Absent comma. + CONVFMT = "%.f" + ROUNDMODE = "D"; print "Variable e D: " e + ROUNDMODE = "U"; print "Variable e U: " e + ROUNDMODE = "D"; print "Literal e D: " 2.7183 + ROUNDMODE = "U"; print "Literal e U: " 2.7183 + printf "\n" + + # Evaluated as number with (hardcoded) printf conversion. + ROUNDMODE = "N"; printf "Variable golden N: %.f\n", golden + ROUNDMODE = "Z"; printf "Variable golden Z: %.f\n", golden + ROUNDMODE = "N"; printf "Literal golden N: %.f\n", 1.6180 + ROUNDMODE = "Z"; printf "Literal golden Z: %.f\n", 1.6180 +} |