Binding labels

A binding label is a value of type default character that specifies the name by which a variable, common block, or a procedure is known to the C compiler.

If a variable, common block, or non-dummy procedure has the BIND attribute specified with a NAME= specifier, the binding label is the value of the expression specified for the NAME= specifier. The case of letters in the binding label is significant, but leading and trailing blanks are ignored. If the entity has the BIND attribute specified without a NAME= specifier, the binding label is the same as the name of the entity using lower case letters.

The binding label of a C entity with external linkage is the same as the name of the C entity. A Fortran entity with the BIND attribute that has the same binding label as a C entity with external linkage is associated with that entity.

A binding label cannot be the same as another binding label or a name used to identify any global entity of the Fortran program, ignoring differences in case except when -qmixed (or -U) is specified.