NCAR / NCAR/ccpp-framework

Capgen needs a check to ensure the character length for `errmsg` is not being set by physics schemes

Open
#720 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

capgen enhancement
Dominant language
Python
Stars
25
Forks
67
Avg merge
3d 8h
Merged PRs (30d)
2

Description

Description

Over time we have decided to keep the length of errmsg in physics schemes unset, to be handled by the host instead:

YES
character(len=*), intent(out) :: errmsg
character(len=*) :: errmsg

NO
character(len=cx) :: errmsg

Solution

Add a check in Capgen that will raise an error if schemes attempt to set the length of the errmsg variable

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating Capgen's scheme-validation checks and the tests covering errmsg declarations. Confirm how existing checks report invalid scheme definitions, then add coverage for declarations that set a concrete errmsg length. Done means Capgen raises an error for the NO forms while accepting the shown assumed-length forms.

Written by the indexing model from the issue text.

Assessment

Tech stack
fortran, python
Domain
tooling
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.