-
Notifications
You must be signed in to change notification settings - Fork 15.2k
[Flang] Add a Fortran Standards Support doc #132195
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 1 commit
a0460e7
8499992
6c4b380
84165a7
8f9db84
8eb16e4
6781534
66199ad
04fb498
27260b6
c36aebc
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| @@ -0,0 +1,63 @@ | ||||||||||
| <!--===- docs/FortranStandardsSupport.md | ||||||||||
|
|
||||||||||
| Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. | ||||||||||
| See https://llvm.org/LICENSE.txt for license information. | ||||||||||
| SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception | ||||||||||
|
|
||||||||||
| --> | ||||||||||
|
|
||||||||||
| # Flang's Fortran standards support | ||||||||||
|
|
||||||||||
| ```{contents} | ||||||||||
| --- | ||||||||||
| local: | ||||||||||
| --- | ||||||||||
| ``` | ||||||||||
|
|
||||||||||
| This document summarizes Flang's Fortran standards support. The information is only provided as a guideline. The compiler emits | ||||||||||
|
||||||||||
| TODOs/Not Yet Implemented messages for unimplemented features and that should be treated as the authoratative information. | ||||||||||
|
||||||||||
| This document summarizes Flang's Fortran standards support. The information is only provided as a guideline. The compiler emits | |
| TODOs/Not Yet Implemented messages for unimplemented features and that should be treated as the authoratative information. | |
| This document summarizes Flang's Fortran standards support. The information is only provided as a guideline. The | |
| TODOs/Not Yet Implemented messages emitted by the compiler for unimplemented features should be treated as authoritative. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| Standards support is provided upto Fortran 2008 for now. It will be later extended for Fortran 2018 and Fortran 2023. | |
| Standards support is provided upto Fortran 2008 for now. It will be extended later for Fortran 2018 and Fortran 2023. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"upto" should be "up to"
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have removed this sentence.
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| the letters **P**, **Y**, **N** for the various implementation status. | |
| the letters **P**, **Y**, **N** for the implementation status: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we have a list of the intrinsics where support for CHARACTER types is incomplete? If it is not too difficult to identify these, a complete list may be better than alluding to "a few intrinsics".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not have a list of intrinsics here. The only ones I am actually aware or the MIN/MAX intrinsic. Since I was not 100% I am making a conservative statement here. Do we want to just say MIN/MAX only? Do you have additional info in the gfortran testsuite?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I can check to see if there are any failures as a result of this. I don't know off the top of my head.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Since all the contents in the first three sections are the same, I suggest to consolidate to the FORTRAN77, Fortran 90 and Fortran 95 section. In addition, if we take Michael's suggestion to populate the Fortran 2018 and Fortran 2023 sections, I suggest to re-order the sections to start with Fortran 2023 first. I think people are more interested in which newer features that flang support nowadays.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have reorganized in descending order of standards. I do not have entries for 2018 and 2023 now. If it is OK, we can add that in subsequent PRs.
I have not consolidated FORTRAN77, Fortran 90 and Fortran 95. I can do so before submitting if there are no reports of unsupported features in this review.
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FORTRAN 77 - consistent with what we use in FortranFeatureHistory.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
length type => length type parameters
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
tblah marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
Outdated
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Volatile => VOLATILE
as it refers to the attribute.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done