anchor.diff:          if ( IERror/=0 ) stop "ALLOCATION ERROR, parent: SUB. matini.f"
           allocate (FCT%NCH(FCT%NEQns+1),stat=IERror)
           if ( IERror/=0 ) stop "ALLOCATION ERROR, nch: SUB. matini.f"
  -        allocate (PORdr(FCT%NEQns+1),stat=IERror)
  -        if ( IERror/=0 ) stop "ALLOCATION ERROR, pordr: SUB. matini.f"
  -        call POSORD(FCT%PARent,BTRee,FCT%INVp,FCT%IPErm,PORdr,FCT%NCH,FCT%NEQns,DEG,MARker,RCHset)
  +        call POSORD(FCT%PARent,BTRee,FCT%INVp,FCT%IPErm,FCT%NEQns,Quarent)
           !
           !   generate skelton graph
           !
  -        allocate (ADJncp(FCT%NEQns+1),stat=IERror)
  -        if ( IERror/=0 ) stop "ALLOCATION ERROR, adjncp: SUB. matini.f"
           allocate (XLEaf(FCT%NEQns+1),stat=IERror)
           if ( IERror/=0 ) stop "ALLOCATION ERROR, xleaf: SUB. matini.f"
           allocate (LEAf(FCT%NTTbr),stat=IERror)
           if ( IERror/=0 ) stop "ALLOCATION ERROR, leaf: SUB. matini.f"
  -        call GNLEAF(IA,JA,FCT%INVp,FCT%IPErm,FCT%NCH,ADJncp,XLEaf,LEAf,FCT%NEQns,lnleaf)
  +        call GNLEAF(IA,JA,FCT%INVp,FCT%IPErm,FCT%NCH,XLEaf,LEAf,FCT%NEQns)
           call FORPAR(FCT%NEQns,FCT%PARent,FCT%NCH,FCT%NSTop)
           !*Deallocation of work arrays
           deallocate (IA)
           deallocate (JA)
  -        deallocate (DEG)
  -        deallocate (MARker)
  -        deallocate (RCHset)
  -        deallocate (NBRhd)
  -        deallocate (QSIze)
  -        deallocate (QLInk)
  -        deallocate (ADJncy)
  +        deallocate (Quarent)
           deallocate (ZPIv)
           !
           !   build up xlnzr,colno  (this is the symbolic fct.)
  
positive.code:       write (6,"(10I6)") (Leaf(i),i=1,Lnleaf)
      endif
  
      return
    end subroutine GNLEAF
  
  
negative.code:     endif
      !*  Errors 2
      if ( ir/=0 ) then
        write (Ifmsg,*) 'ERROR in nufct0. ir = ', ir
        stop
      endif
  