Merge branch 'doc-CMP0054-example' into release
diff --git a/Help/policy/CMP0054.rst b/Help/policy/CMP0054.rst
index dffee5e..39f0c40 100644
--- a/Help/policy/CMP0054.rst
+++ b/Help/policy/CMP0054.rst
@@ -3,15 +3,43 @@
 
 Only interpret :command:`if` arguments as variables or keywords when unquoted.
 
-CMake 3.1 and above no longer dereference variables or interpret keywords
-in an :command:`if` command argument when it is a :ref:`Quoted Argument`
-or a :ref:`Bracket Argument`.
+CMake 3.1 and above no longer implicitly dereference variables or
+interpret keywords in an :command:`if` command argument when
+it is a :ref:`Quoted Argument` or a :ref:`Bracket Argument`.
 
 The ``OLD`` behavior for this policy is to dereference variables and
 interpret keywords even if they are quoted or bracketed.
 The ``NEW`` behavior is to not dereference variables or interpret keywords
 that have been quoted or bracketed.
 
+Given the following partial example:
+
+::
+
+  set(MONKEY 1)
+  set(ANIMAL MONKEY)
+
+  if("${ANIMAL}" STREQUAL "MONKEY")
+
+After explicit expansion of variables this gives:
+
+::
+
+  if("MONKEY" STREQUAL "MONKEY")
+
+With the policy set to ``OLD`` implicit expansion reduces this semantically to:
+
+::
+
+  if("1" STREQUAL "1")
+
+With the policy set to ``NEW`` the quoted arguments will not be
+further dereferenced:
+
+::
+
+  if("MONKEY" STREQUAL "MONKEY")
+
 This policy was introduced in CMake version 3.1.
 CMake version |release| warns when the policy is not set and uses
 ``OLD`` behavior.  Use the :command:`cmake_policy` command to set