I have to modify an old Fortran code. I should move some code to a subroutine. This old code use lot of variables (most of them declared through common blocks in different include files). The subroutine that I create includes some of these include files as follows:
In this subroutine is only calculated some variables which will be printed in a table, for that reason I need this declared variables calculated in other subroutines.
When I compile with intel Parallel Studio XE 2011 and Visual Studio 2010 I become following compilation errors:
error #6406: Conflicting attributes or multiple declaration of name. [N_AB]
error #6406: Conflicting attributes or multiple declaration of name. [MX_ZG]
error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [N_AB]
error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [N_AB]
error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [N_AB]
error #6756: A COMMON block data object must not be an automatic object. [FAK_C1]
error #6756: A COMMON block data object must not be an automatic object. [FAK_C2]
error #6219: A specification expression object must be a dummy argument, a COMMON block object, or an object accessible through host or use association [N_AB]
error #6219: A specification expression object must be a dummy argument, a COMMON block object, or an object accessible through host or use association [MX_ZG]
Could someone please help me to fix these errors? Many thanks
Code:
subroutine HeatRadiation
* Include files where some variables are defined
include 'BLCONT.INS' ! declaration TEND, TK
include 'PRINT_OP.INS' ! declaration print_zusaetz_erg
include 'ZWEIZUG.INS' ! declaration zweizug_vorhanden, zweizug_hzfl_name, FAK_C1, FAK_C2
include 'params.ins' ! declaration vble max_rg_abschn_2zug, N_AB, MX_ZG
RETURN
END
In this subroutine is only calculated some variables which will be printed in a table, for that reason I need this declared variables calculated in other subroutines.
When I compile with intel Parallel Studio XE 2011 and Visual Studio 2010 I become following compilation errors:
error #6406: Conflicting attributes or multiple declaration of name. [N_AB]
error #6406: Conflicting attributes or multiple declaration of name. [MX_ZG]
error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [N_AB]
error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [N_AB]
error #6592: This symbol must be a defined parameter, an enumerator, or an argument of an inquiry function that evaluates to a compile-time constant. [N_AB]
error #6756: A COMMON block data object must not be an automatic object. [FAK_C1]
error #6756: A COMMON block data object must not be an automatic object. [FAK_C2]
error #6219: A specification expression object must be a dummy argument, a COMMON block object, or an object accessible through host or use association [N_AB]
error #6219: A specification expression object must be a dummy argument, a COMMON block object, or an object accessible through host or use association [MX_ZG]
Could someone please help me to fix these errors? Many thanks