    # File lib/rubygems/dependency_list.rb, line 112
      def spec_predecessors
        result = Hash.new { |h,k| h[k] = [] }

        specs = @specs.sort.reverse

        specs.each do |spec|
          specs.each do |other|
            next if spec == other

            other.dependencies.each do |dep|
              if spec.satisfies_requirement? dep then
                result[spec] << other
              end
            end
          end
        end

        result
      end