We like well-formed fluid HTML templates, because we can spot errors automatically by validating them with xmllint.
This did work with TYPO3 v7:
<v:variable.set name="url">/?eID=tx_ext_action<![CDATA[&]]>param2={record.uid}</v:variable.set>
The CDATA sections are dropped in TYPO3 v8.
Workaround:
<v:variable.set name="url"><f:format.htmlentitiesDecode>/?eID=tx_ext_action&param2={record.uid}</f:format.htmlentitiesDecode></v:variable.set>