Make quadruple precision in stdlib_specialfunctions_gamma.f90 optional
#967
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request addresses systems that do not support
real128(see issue #964).In
stdlib_specialfunctions_gamma.f90, I addedfyppdirectives to choose whether to include quadruple precision code.--with_qp: Quadruple precision is enabled.--with_qp: Allqpreferences (and related_cdp/_rdpprocedures) are removed.How it works
#:if WITH_QP ... #:endifblocks infypp, and replaced references to real128 with a new variable.--with_qpis passed tofypp_deployment.py, the code forqpremains.--with_qpis omitted, the code forqpis excluded.diffs old and new
src/temp/stdlib_specialfunctions_gamma.f90With
--with-qpiso_fortran_env, only : qp => real128is replaced byuse stdlib_kinds, only : ... qp, so quadruple precision still works essentially as before.Without
--with_qpqpreferences are generated, and any_cdp/_rdpprocedures are removed.(...) denotes abbreviation.
example/specialfunctions_gamma/example_gamma.f90andexample/specialfunctions_gamma/example_log_gamma.f90Summary
qpoptional to avoid build failures on systems without quadmath.