This fixes Proc.new not seeing a BlockEnvironment because it was running inside an inlined method with the block inlined (thus no BlockEnvironment was ever created)
- File.exists? - File.file? - File.stat - File.new - File.read
The benchmarks tries to expose different comparison times based on starting / ending with a different character so it shouldn't trigger the shortcut we have that checks length first.