@@ -64,21 +64,19 @@ compiler standard-conformance, including a test for each scenario in which the
64
64
the Fortran 2023 standard requires that an object be finalized. The table below
65
65
summarizes the observed compiler behaviors:
66
66
67
- | _ Compiler_ | _ Test failures_ | _ Version tested_ |
68
- | :--- | :---: | :--- |
69
- | AMD ` flang ` | N.A. (see Note 1.) | 13.0.0 (AOCC_3.2.0-Build\# 128 2021\_ 11\_ 12) |
70
- | Cray ` ftn ` | >= 3 (see Note 2.) | 13.0.1 |
71
- | GCC ` gfortran ` :trophy : | 0 | 13.1.0 |
72
- | IBM ` xlf2008_r ` | 1 | 17.1.0 on AIX |
73
- | Intel ` ifort ` | 1 | 2021.7.0 Build 20220726_000000 |
74
- | Intel ` ifx ` | 1 | 2024.0.0 Build 20231017 |
75
- | LLVM ` flang ` :trophy : | 0 | 19.0.0 ` git ` commit 325f5123 |
76
- | NAG ` nagfor ` :trophy : | 0 | 7.1 Build 7113 |
77
- | NVIDIA ` nvfortran ` | 2 | 22.7-0 |
78
-
79
- ** Notes**
80
- 1 . Fails to build due to an internal compiler error (ICE).
81
- 2 . Fails to build due to ` fpm ` issue [ 767] . See [ test/README.md#cray] for a lower bound on the Cray compiler test failures.
67
+ | _ Compiler_ | _ Test failures_ | _ Version tested_ |
68
+ | :--- | :---: | :--- |
69
+ | AMD ` flang ` | N.A. (see Note) | 13.0.0 (AOCC_3.2.0-Build\# 128 2021\_ 11\_ 12) |
70
+ | Cray ` ftn ` | 4 | 17.0.0 |
71
+ | GCC ` gfortran ` :trophy : | 0 | 13.1.0 |
72
+ | IBM ` xlf2008_r ` | 1 | 17.1.0 on AIX |
73
+ | Intel ` ifort ` | 1 | 2021.7.0 Build 20220726_000000 |
74
+ | Intel ` ifx ` | 1 | 2024.0.0 Build 20231017 |
75
+ | LLVM ` flang ` :trophy : | 0 | 19.0.0 ` git ` commit 325f5123 |
76
+ | NAG ` nagfor ` :trophy : | 0 | 7.1 Build 7113 |
77
+ | NVIDIA ` nvfortran ` | 2 | 22.7-0 |
78
+
79
+ Note: AMD ` flang ` fails to build Smart-Pointers due to an internal compiler error (ICE).
82
80
83
81
See the [ test suite README.md] ( ./test/README.md ) for more details on each compiler's test
84
82
results.
@@ -93,42 +91,66 @@ cd smart-pointer
93
91
```
94
92
followed by one of the commands below corresponding to your compiler choice.
95
93
96
- ### Numerical Algorithms Group
94
+ ### Fully supported compilers
95
+ The following compilers pass all Smart-Pointers tests.
96
+
97
+ #### GCC ` gfortran `
98
+ ```
99
+ fpm test
100
+ ```
101
+
102
+ #### LLVM ` flang `
103
+ ```
104
+ fpm test --compiler flang-new
105
+ ```
106
+
107
+ #### NAG ` nagfor `
97
108
```
98
109
fpm test --compiler nagfor --flag -fpp
99
110
```
100
111
101
- ### Intel
112
+ ### Partially supported compilers
113
+ The following compilers pass most Smart-Pointers tests.
114
+
115
+ #### HPE: Cray Compiler Environment (CCE)
116
+ Building with ` fpm ` using the CCE ` ftn ` compiler wrapper requires an additional
117
+ wrapper to identify the wrapped compiler. Place a file named ` crayftn.sh ` at the
118
+ front of your ` PATH ` environment variable containing the following contents:
102
119
```
103
- fpm test --compiler ifort
120
+ #!/bin/bash
121
+
122
+ ftn "$@"
104
123
```
105
- or
124
+ Then test with the following command
106
125
```
107
- fpm test --compiler ifx
126
+ fpm test --compiler crayftn.sh
108
127
```
109
- where the latter requires ` fpm ` 0.10.0 or later.
110
128
111
- ### IBM
129
+ #### IBM
112
130
```
113
131
fpm test --archiver ar --compiler xlf2008_r --flag -DXLF
114
132
```
115
133
116
- ### GCC
134
+ #### Intel ` ifort `
117
135
```
118
- fpm test
136
+ fpm test --compiler ifort
119
137
```
120
138
121
- ### LLVM
139
+ #### Intel ` ifx `
122
140
```
123
- fpm test --compiler flang-new
141
+ fpm test --compiler ifx
124
142
```
143
+ where the latter requires ` fpm ` 0.10.0 or later.
125
144
126
- ### NVIDIA
145
+ #### NVIDIA ` nvfortran `
127
146
```
128
147
fpm test --compiler nvfortran --flag -Mpreprocess
129
148
```
130
149
131
- ### AMD
150
+ ### Unsupported compiler
151
+ The following compiler cannot build the Smart-Pointers library.
152
+
153
+ #### AMD ` flang `
132
154
```
133
155
fpm test --compiler flang --flag -cpp
134
156
```
0 commit comments