Escaping dei caratteri ordinari nelle espressioni regolari in PHP

Il modificatore X fa sì che l'escaping di un carattere ordinario causi un errore. Senza questo operatore, i caratteri ordinari possono essere sottoposti a escaping, ma rappresenteranno comunque se stessi (eccezione: le cifre, che diventeranno backreference). Vediamo un esempio:

php<?php
  preg_replace('#x\@x#X', '!', 'x@x'); // errore, @ non è un carattere speciale
?>