anchor.diff:          end if
       end do
       this%Count = num
  -    this%OwnsObjects = .true.
   
       end subroutine ReadBinary
   
  
positive.code:     Type is (real(list_prec))
          P = Arr
          class default
          call this%Error('TRealArrayList_Value: object of wrong type (eg. ifort 2017.4 bug)')
      end select
  
      end function TRealArrayList_Value
  
negative.code:         if (k==1) then
              allocate(ArrR(sz))
              read(fid) ArrR
              P => arrR
              call this%AddArrayPointer(P)
          else if (k==2) then
              allocate(ArrD(sz))
              read(fid) ArrD
              P => arrR
              call this%AddArrayPointer(P)
          else if (k==3) then
              allocate(ArrI(sz))
              read(fid) ArrI
              P => arrR
              call this%AddArrayPointer(P)
          else if (k==4) then
              allocate(ArrL(sz))
              read(fid) ArrL
              P => arrR
              call this%AddArrayPointer(P)
          else if (k==5) then
              allocate(character(sz)::St) !Ifort required class(*) pointer
              select type (St)
  