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

PWR007: Suggest using implicit none (external) #50

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

inaki-amatria
Copy link
Contributor

@inaki-amatria inaki-amatria commented Dec 2, 2024

Suggest using the extended form implicit none (type, external) to avoid calling procedures through implicit interfaces. I also took the chance to adjust the benchmark script actions to trigger iff we change source code. And I also formatted one line in PWR007 so it does not exceed 80 characters 😁.

@inaki-amatria inaki-amatria self-assigned this Dec 2, 2024
@inaki-amatria inaki-amatria force-pushed the feature/AddATipToPWR007 branch 2 times, most recently from d919b8c to c48d94e Compare December 2, 2024 12:39
Comment on lines +30 to +31
> `implicit none (type, external)` to disable implicit typing and enable the
> compiler to detect procedure calls through implicit interfaces. This approach
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you think of:

Suggested change
> `implicit none (type, external)` to disable implicit typing and enable the
> compiler to detect procedure calls through implicit interfaces. This approach
> `implicit none (type, external)` to disable both implicit variables and
> implicit procedures, which are called through implicit interfaces. This approach

To make it more specific as to what type of procedures are affected, as the external attribute doesn't prevent all possible scenarios of calls through implicit interfaces.

Comment on lines +6 to +10
paths-ignore:
- 'Checks/**/*.md'
- 'Glossary/**/*.md'
- 'src/**'
- 'static/**'
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To prevent this check from "breaking" whenever the structure of the repo gets altered, what about checking directly for changes in source files? E.g.:

on:
  push:
    paths:
      - 'Benchmark/
      - '**.c'
      - '**.cpp'
      - '**.f90'
      - '**.F'

Copy link
Contributor

@daniel-otero daniel-otero left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM.

I also agree with @alvrogd suggestions.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants