The following is legal:

function x(z) bind(C,name='x'//'f')
  integer :: z, x
end function x

as the Standard (F2003) only says:

R509: language-binding-spec is BIND (C [, NAME =
scalar-char-initialization-expr ])
C540: The scalar-char-initialization-expr shall be of default character kind.

So, any scalar char initialisation expression of default character kind is fair
game. This will require removing a good part of the code in gfc_match_bind_c(),
and call more generic routines instead, so it's not really bad news (and it
also requires remove the gfc_match_name_C function).


-- 
           Summary: Binding label can be any scalar char initialisation
                    expression
           Product: gcc
           Version: 4.4.0
            Status: UNCONFIRMED
          Keywords: rejects-valid
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: fxcoudert at gcc dot gnu dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36275

Reply via email to