Skip to content
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

Some syntax of and constraints on sync-all-stmt not enforced by flang frontend #53915

Closed
ktras opened this issue Feb 18, 2022 · 3 comments
Closed

Comments

@ktras
Copy link
Contributor

ktras commented Feb 18, 2022

The flang frontend doesn't currently enforce some of the constraints stated in the Fortran 2018 standard in relation to sync-all-stmt. This is shown in a semantics test for sync-all-stmt which uses the XFAIL directive so that the test passes and uses ERROR directives with to be determined error messages where errors should occur, but do not currently. When the XFAIL directive and all of the ERROR directives with to be determined error messages are removed, the test passes, as the non-standard-conforming statements are not caught.

Constraints on sync-all-stmt not currently enforced:

  • C1172 - that no specifier shall appear more than once in a given sync-stat-list
    • L62-68
    •  ! No specifier shall appear more than once in a given sync-stat-list
       !ERROR: to be determined
       sync all(stat=sync_status, stat=superfluous_stat)
      
       ! No specifier shall appear more than once in a given sync-stat-list
       !ERROR: to be determined
       sync all(errmsg=error_message, errmsg=superfluous_errmsg)
      
  • C1173 - that a stat-variable or errmsg-variable in a sync-stat shall not be a coindexed object.
    • L72-78
    •  ! Check constraint C1173 from the Fortran 2018 standard
       !ERROR: to be determined
       sync all(stat=co_indexed_integer[1])
      
       ! Check constraint C1173 from the Fortran 2018 standard
       !ERROR: to be determined
       sync all(errmsg=co_indexed_character[1])
      
@llvmbot
Copy link
Collaborator

llvmbot commented Feb 18, 2022

@llvm/issue-subscribers-flang-frontend

@ktras
Copy link
Contributor Author

ktras commented Aug 31, 2022

I just opened differential D133070 to address this.

@ktras ktras self-assigned this Oct 26, 2022
@ktras
Copy link
Contributor Author

ktras commented Oct 26, 2022

I abandoned differential D133070 and simplified it and opened a new differential D136104 which includes changes that addresses this issue. The patch has landed and so this issue is now closed.

@ktras ktras closed this as completed Oct 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants