Gcc 在Fortran 90中定义32位整数

Gcc 在Fortran 90中定义32位整数,gcc,fortran,gfortran,Gcc,Fortran,Gfortran,我试图定义一个将存储32位整数的派生类型 我试过: type myType integer*4 :: high integer*4 :: low integer*4 :: flags end type type(myType) :: myVar 但当我尝试这样做时: myVar%flags = x'80000000' 我得到: Error: Arithmetic overflow converting INTEGER(1

我试图定义一个将存储32位整数的派生类型

我试过:

type myType 
    integer*4 :: high           
    integer*4 :: low            
    integer*4 :: flags
end type
type(myType) :: myVar
但当我尝试这样做时:

myVar%flags = x'80000000'
我得到:

Error: Arithmetic overflow converting INTEGER(16) to INTEGER(4) at (1). This check can be disabled with the option '-fno-range-check'
我正在64位FreeBSD12安装中使用gfortran(gcc8)