class IDL::Scanner

def find_include(fname, all = true)

def find_include(fname, all = true)
  if File.file?(fname) && File.readable?(fname)
    File.expand_path(fname)
  else
    # search transient include paths if allowed (quoted includes)
    fp = if all then
           @xincludepaths.find do |p|
             check_include(p, fname)
           end
         else
           nil
         end
    # search system include paths if still needed
    fp = @includepaths.find do |p|
      check_include(p, fname)
    end unless fp
    fp += fname if fp
    fp
  end
end