Ошибка при передаче макроса в \setmainlanguage

Ошибка при передаче макроса в \setmainlanguage

Ошибка при компиляции этого примера с использованием vanilla XeLaTeX ( XeTeX 3.141592653-2.6-0.999994 (TeX Live 2022)) или LuaLaTeX ( This is LuaHBTeX, Version 1.15.0 (TeX Live 2022)).

У меня есть следующий класс test.cls:

\ProvidesClass{test}[2022/05/06 Test class]
\DeclareOption{portuguese}{\def\my@mainlanguage{portuguese}}
\DeclareOption{english}{\def\my@mainlanguage{english}}
\ProcessOptions\relax
\ExecuteOptions{}
\LoadClass{article}\RequirePackage{polyglossia}
\setmainlanguage{\my@mainlanguage}

И пример документа:

\documentclass[portuguese]{test}
\title{Test}
\begin{document}
\maketitleTest
\end{document}

Сообщение об ошибке:

! LaTeX Error: Missing \begin{document}.
See the LaTeX manual or LaTeX Companion for explanation.Type  H <return>  for immediate help. ...

l.8 \setmainlanguage{\my@mainlanguage}

Компилируется без ошибок с использованием TeXLive от 2021 года.

Связанный контент