class Bootsnap::LoadPathCache::Store

def mkdir_p(path)

def mkdir_p(path)
  stack = []
  until File.directory?(path)
    stack.push path
    path = File.dirname(path)
  end
  stack.reverse_each do |dir|
    Dir.mkdir(dir)
  rescue SystemCallError
    # Check for broken symlinks. Calling File.realpath will raise Errno::ENOENT if that is the case
    File.realpath(dir) if File.symlink?(dir)
    raise unless File.directory?(dir)
  end
end