anchor.diff:        Type(MQC_Matrix)::Matrix
   !
         If(.not.MQC_Matrix_HaveInteger(Matrix)) Call MQC_Error('Incoming matrix not integer in MQC_Matrix_Copy_Int2Complex')
  -      Call MQC_Allocate_Matrix(MQC_Matrix_Rows(Matrix),MQC_Matrix_Columns(Matrix),Matrix, &
  -        'Complex',Matrix%Storage)
         Matrix%MatC = Matrix%MatI
         If(Allocated(Matrix%MatI)) Deallocate(Matrix%MatI)
  +      Matrix%Data_Type = 'Complex'
   !
         Return
         End Subroutine MQC_Matrix_Copy_Int2Complex
  
positive.code:       Type(MQC_Matrix)::Matrix
  !
        If(.not.MQC_Matrix_HaveInteger(Matrix)) Call MQC_Error('Incoming matrix not integer in MQC_Matrix_Copy_Int2Real')
        Call MQC_Allocate_Matrix(MQC_Matrix_Rows(Matrix),MQC_Matrix_Columns(Matrix),Matrix, &
          'Real',Matrix%Storage)
        Matrix%MatR = Matrix%MatI
        If(Allocated(Matrix%MatI)) Deallocate(Matrix%MatI)
  !
        Return
        End Subroutine MQC_Matrix_Copy_Int2Real
  
negative.code:       storFlag = a%Storage
        typeFlag = a%Data_Type
        if(a%Storage.eq.'StorDiag') call mqc_matrix_diag2Full(a)
        if(a%Storage.eq.'StorSymm') call mqc_matrix_symm2Full(a)
        if(a%Data_Type.eq.'Integer'.or.a%Data_Type.eq.'Real') then
          If(a%Data_Type.eq.'Integer') call mqc_matrix_copy_int2Real(a)
          allocate(temp(rows,cols))
  