anchor.diff:            nuc => nuclides(mat % nuclide(j))
   
             ! loop over energy points
  -          n = size(nuc % energy)
  -          call add_grid_points(list, nuc % energy, n)
  +          call add_grid_points(list, nuc % energy)
          end do
       end do
   
  
positive.code:     head => list
  
      E = energy(index)
      do while (index <= n_energy)
  
         ! If we've reached the end of the grid energy list, add the remaining
         ! energy points to the end
         if (.not. associated(current)) then
            ! finish remaining energies
            do while (index <= n_energy)
               allocate(previous % next)
               current => previous % next
               current % data = energy(index)
  
negative.code:     n_grid = list_size(list)
      allocate(e_grid(n_grid))
      current => list
      do i = 1, n_grid
         e_grid(i) = current % data
         current => current % next
      end do
  