module test_mod
implicit none
type :: recursive_type
type(recursive_type), allocatable :: previous
end type recursive_type
end module test_mod
The code above is rejected by nvfortran
$ nvfortran --version
nvfortran 26.5-0 64-bit target on x86-64 Linux -tp icelake-server
NVIDIA Compilers and Tools
Copyright (c) 2026, NVIDIA CORPORATION & AFFILIATES. All rights reserved.
$ nvfortran -c test.f90
NVFORTRAN-S-0155-Derived type component must have the POINTER attribute - previous (test.f90: 4)
0 inform, 0 warnings, 1 severes, 0 fatal for test_mod
However, that code is accepted by other compilers, including NAG (known for its strict standard compliance)
$ nagfor -c test.f90
NAG Fortran Compiler Release 7.2(Shin-Urayasu) Build 7200
[NAG Fortran Compiler normal termination]