let prevent_recursion fln_set fln = 
    if SetFilename.mem fln fln_set then
      raise (RecursiveLink fln)
    else
      SetFilename.add fln fln_set