Copyright (C) 2000-2012 |
GNU Info (g77-300.info)Increasing Precision/RangeIncreasing Precision/Range -------------------------- Some compilers, such as `f2c', have an option (`-r8', `-qrealsize=8' or similar) that provides automatic treatment of `REAL' entities such that they have twice the storage size, and a corresponding increase in the range and precision, of what would normally be the `REAL(KIND=1)' (default `REAL') type. (This affects `COMPLEX' the same way.) They also typically offer another option (`-i8') to increase `INTEGER' entities so they are twice as large (with roughly twice as much range). (There are potential pitfalls in using these options.) `g77' does not yet offer any option that performs these kinds of transformations. Part of the problem is the lack of detailed specifications regarding exactly how these options affect the interpretation of constants, intrinsics, and so on. Until `g77' addresses this need, programmers could improve the portability of their code by modifying it to not require compile-time options to produce correct results. Some free tools are available which may help, specifically in Toolpack (which one would expect to be sound) and the `fortran' section of the Netlib repository. Use of preprocessors can provide a fairly portable means to work around the lack of widely portable methods in the Fortran language itself (though increasing acceptance of Fortran 90 would alleviate this problem). automatically generated by info2www version 1.2.2.9 |