\setmainlanguage にマクロを渡すときにエラーが発生しました

\setmainlanguage にマクロを渡すときにエラーが発生しました

この例を標準の 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}

2021年からTeXLiveを使用してエラーなしでコンパイルされます。

関連情報