The use of the constructors fails, and the code to reverse the order of the components fails. NAG Fortran Compiler Release 5.2(668) Error: ex_09.1.3.f90, line 4: Structure constructor for MY_COMPLEX which has PRIVATE components detected at )@, Error: ex_09.1.3.f90, line 5: Structure constructor for MY_COMPLEX which has PRIVATE components detected at )@, Error: ex_09.1.3.f90, line 8: Attempt to access PRIVATE component IMAGINARY of type MY_COMPLEX detected at %@IMAGINARY Error: ex_09.1.3.f90, line 8: Attempt to access PRIVATE component REAL of type MY_COMPLEX detected at %@REAL Error: ex_09.1.3.f90, line 9: Attempt to access PRIVATE component REAL of type MY_COMPLEX detected at %@REAL Error: ex_09.1.3.f90, line 9: Attempt to access PRIVATE component IMAGINARY of type MY_COMPLEX detected at %@IMAGINARY [NAG Fortran Compiler pass 1 error termination, 6 errors]