anchor.diff:      !! Root Lookups
       INTEGER, DIMENSION(:), ALLOCATABLE :: row_root_lookup
       INTEGER, DIMENSION(:), ALLOCATABLE :: col_root_lookup
  -    INTEGER, DIMENSION(num_process_rows) :: rows_per_proc
  -    INTEGER, DIMENSION(num_process_columns) :: cols_per_proc
  -    INTEGER, DIMENSION(num_process_rows) :: displ_rows_per_proc
  -    INTEGER, DIMENSION(num_process_columns) :: displ_cols_per_proc
       !! Temporary Variables
       REAL(NTREAL), DIMENSION(:), ALLOCATABLE :: a_buf
  -    INTEGER :: II, JJ, local_JJ, local_II
  +    INTEGER :: II, JJ, local_JJ
       INTEGER :: local_pi_i, local_pi_j
       REAL(NTREAL) :: Aval, insert_value, inverse_factor
       REAL(NTREAL), DIMENSION(:), ALLOCATABLE :: dot_values
       INTEGER :: row_root, col_root
  -    INTEGER :: fill_counter
  -    INTEGER, DIMENSION(num_process_rows) :: diags_per_proc
  -    INTEGER, DIMENSION(num_process_rows) :: diag_displ
   
       !! Optional Parameters
       IF (PRESENT(solver_parameters_in)) THEN
  
positive.code:     pivot_vector(index) = pivot_vector(start_index)
      pivot_vector(start_index) = swap
    END SUBROUTINE GetPivot
  END MODULE LinearSolversModule
  
negative.code:     ALLOCATE(recv_index(sparse_a%rows))
      ALLOCATE(recv_values(sparse_a%rows))
      ALLOCATE(dot_values(sparse_a%columns))
  
      !! Main Loop
      DO JJ = 1, rank_in
         !! Pick a pivot vector
  