load_specification (Gem::SourceIndex)

    # File lib/rubygems/source_index.rb, line 85
        def load_specification(file_name)
          return nil unless file_name and File.exist? file_name

          spec_code = if RUBY_VERSION < '1.9' then
                        File.read file_name
                      else
                        File.read file_name, :encoding => 'UTF-8'
                      end.untaint

          begin
            gemspec = eval spec_code, binding, file_name

            if gemspec.is_a?(Gem::Specification)
              gemspec.loaded_from = file_name
              return gemspec
            end
            alert_warning "File '#{file_name}' does not evaluate to a gem specification"
          rescue SignalException, SystemExit
            raise
          rescue SyntaxError => e
            alert_warning e
            alert_warning spec_code
          rescue Exception => e
            alert_warning "#{e.inspect}\n#{spec_code}"
            alert_warning "Invalid .gemspec format in '#{file_name}'"
          end

          return nil
        end