diff --git a/Library/Homebrew/sorbet/rbi/utils/inreplace.rbi b/Library/Homebrew/sorbet/rbi/utils/inreplace.rbi
index 6c9bfb5b3e28e2fa20938b86041ab646f8898ef9..b6d0be9a5a86b1e3ef905111a4f774fcd589dd77 100644
--- a/Library/Homebrew/sorbet/rbi/utils/inreplace.rbi
+++ b/Library/Homebrew/sorbet/rbi/utils/inreplace.rbi
@@ -3,9 +3,8 @@
 module Utils::Inreplace
   include Kernel
 
-  sig { params(paths: T::Array[T.untyped], before: T.nilable(String), after: T.nilable(String), audit_result: T::Boolean).void }
+  sig { params(paths: T::Array[T.untyped], before: T.nilable(String), after: T.nilable(T.any(String, Symbol)), audit_result: T::Boolean).void }
   def inreplace(paths, before = nil, after = nil, audit_result = true); end
-
 end
 
 class StringInreplaceExtension
diff --git a/Library/Homebrew/utils/inreplace.rb b/Library/Homebrew/utils/inreplace.rb
index 8367b9c3ffd76e85764d8243acb360d3880b1618..ae3489b6c8b75b676bd2af6035b3f21cf1ccf5ad 100644
--- a/Library/Homebrew/utils/inreplace.rb
+++ b/Library/Homebrew/utils/inreplace.rb
@@ -28,6 +28,8 @@ module Utils
     #
     # @api public
     def inreplace(paths, before = nil, after = nil, audit_result = true) # rubocop:disable Style/OptionalBooleanParameter
+      after = after.to_s if after.is_a? Symbol
+
       errors = {}
 
       errors["`paths` (first) parameter"] = ["`paths` was empty"] if paths.blank?
@@ -39,7 +41,6 @@ module Utils
         if before.nil? && after.nil?
           yield s
         else
-          after = after.to_s if after.is_a? Symbol
           s.gsub!(before, after, audit_result)
         end