diff --git a/activerecord/lib/arel/collectors/composite.rb b/activerecord/lib/arel/collectors/composite.rb
index <HASH>..<HASH> 100644
--- a/activerecord/lib/arel/collectors/composite.rb
+++ b/activerecord/lib/arel/collectors/composite.rb
@@ -24,8 +24,7 @@ module Arel # :nodoc: all
         [left.value, right.value]
       end
 
-      protected
-
+      private
         attr_reader :left, :right
     end
   end
diff --git a/activerecord/lib/arel/collectors/substitute_binds.rb b/activerecord/lib/arel/collectors/substitute_binds.rb
index <HASH>..<HASH> 100644
--- a/activerecord/lib/arel/collectors/substitute_binds.rb
+++ b/activerecord/lib/arel/collectors/substitute_binds.rb
@@ -21,8 +21,7 @@ module Arel # :nodoc: all
         delegate.value
       end
 
-      protected
-
+      private
         attr_reader :quoter, :delegate
     end
   end
diff --git a/activerecord/lib/arel/table.rb b/activerecord/lib/arel/table.rb
index <HASH>..<HASH> 100644
--- a/activerecord/lib/arel/table.rb
+++ b/activerecord/lib/arel/table.rb
@@ -104,8 +104,7 @@ module Arel # :nodoc: all
       !type_caster.nil?
     end
 
-    protected
-
+    private
       attr_reader :type_caster
   end
 end
Use private attr_reader in Arel

No longer needed workaround for Ruby <I> "private attribute?" warning.

Related 6d<I>b5e<I>a<I>fe<I>afcebad<I>c3c<I>de<I>fa.