Index: /trunk/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java	(revision 12982)
+++ /trunk/src/org/openstreetmap/josm/data/preferences/AbstractProperty.java	(revision 12983)
@@ -231,4 +231,13 @@
     protected Preferences getPreferences() {
         return preferences;
+    }
+
+    /**
+     * Creates a new {@link CachingProperty} instance for this property.
+     * @return The new caching property instance.
+     * @since 12983
+     */
+    public CachingProperty<T> cached() {
+        return new CachingProperty<>(this);
     }
 
Index: /trunk/src/org/openstreetmap/josm/data/preferences/AbstractToStringProperty.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/preferences/AbstractToStringProperty.java	(revision 12982)
+++ /trunk/src/org/openstreetmap/josm/data/preferences/AbstractToStringProperty.java	(revision 12983)
@@ -146,10 +146,8 @@
     }
 
-    /**
-     * Creates a new {@link CachingProperty} instance for this property.
-     * @return The new caching property instance.
-     */
+    @Override
     public CachingProperty<T> cached() {
-        return new CachingProperty<>(this);
+        // Removing this implementation breaks binary compatibility
+        return super.cached();
     }
 }
