Skip to content

Weird Capgen fortran parsing error? #757

Description

@dustinswales

Description

When parsing sfc_diff.f, something strange happens.

All of the scheme arguments are skipped, but the trailing comment in the first line of subroutine call is registered as an argument, ['& !intent(in']

Syntax error: Invalid dummy argument, 'ivegsrc', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:88
Syntax error: Invalid dummy argument, 'sfc_z0_type', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:89
Syntax error: Invalid dummy argument, 'use_oceanuv', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:90
Syntax error: Invalid dummy argument, 'vegtype', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:92
Syntax error: Invalid dummy argument, 'redrag', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:94
Syntax error: Invalid dummy argument, 'flag_iter', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:95
Syntax error: Invalid dummy argument, 'dry', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:95
Syntax error: Invalid dummy argument, 'icy', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:95
Syntax error: Invalid dummy argument, 'flag_lakefreeze', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:96
Syntax error: Invalid dummy argument, 'wet', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:97
Syntax error: Invalid dummy argument, 'thsfc_loc', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:99
Syntax error: Invalid dummy argument, 'u10m', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:101
Syntax error: Invalid dummy argument, 'v10m', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:101
Syntax error: Invalid dummy argument, 'u1', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:102
Syntax error: Invalid dummy argument, 'v1', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:102
Syntax error: Invalid dummy argument, 'usfco', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:103
Syntax error: Invalid dummy argument, 'vsfco', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:103
Syntax error: Invalid dummy argument, 'ps', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 't1', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'q1', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'z1', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'garea', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'prsl1', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'prslki', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'prsik1', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'prslk1', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'wind', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'sigmaf', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'shdmax', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'z0pert', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'ztpert', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:105
Syntax error: Invalid dummy argument, 'lakefrac', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:109
Syntax error: Invalid dummy argument, 'fice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:110
Syntax error: Invalid dummy argument, 'tskin_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:111
Syntax error: Invalid dummy argument, 'tskin_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:111
Syntax error: Invalid dummy argument, 'tskin_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:111
Syntax error: Invalid dummy argument, 'tsurf_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:111
Syntax error: Invalid dummy argument, 'tsurf_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:111
Syntax error: Invalid dummy argument, 'tsurf_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:111
Syntax error: Invalid dummy argument, 'z0rl_wav', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:115
Syntax error: Invalid dummy argument, 'z0rl_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'z0rl_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'z0rl_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ustar_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ustar_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ustar_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'cm_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'cm_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'cm_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ch_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ch_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ch_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'rb_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'rb_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'rb_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'stress_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'stress_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'stress_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fm_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fm_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fm_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fh_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fh_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fh_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fm10_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fm10_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fm10_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fh2_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fh2_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'fh2_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ztmax_wat', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ztmax_lnd', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'ztmax_ice', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:116
Syntax error: Invalid dummy argument, 'zvfun', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:128
Syntax error: Invalid dummy argument, 'errmsg', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:130
Syntax error: Invalid dummy argument, 'errflg', at /glade/work/dswales/SCM/CI/meta_to_source_comp/ccpp-scm/ccpp/physics/physics/SFC_Layer/UFS/sfc_diff.f:131
Missing local_variables, ['&  !intent(in'] in sfc_diff_run

If I remove the trailing comment at the top of the subroutine (line 57), the error vanishes. This was discovered by chance.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

bugFor issues describing bugs, or PRs fixing bugscapgenbugs, requests, etc. that involve ccpp_capgen

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions