# New command within glossaries ›first‹ needs to be protected?

Consider following MWE

\documentclass{scrartcl}
\usepackage{xspace}
\makeatletter
\newcommand\BC{\,v.\,Chr\@ifnextchar.{}{.\relax\@\xspace}}
\makeatother

\usepackage{glossaries}
\makeglossaries

\newglossaryentry{Augustus}{%
name={\textbf{Augustus}},%
description={Imperator
Caesar Divi Filius Augustus, geboren 63\BC, gestorben 14\AD, regierte von 27\BC bis 14\AD.},
}

\begin{document}
\gls{Augustus}

\printglossaries
\end{document}


All is fine and works as expected:

But I dont understand why the protect-commands in first={Augustus (27\protect\BC--14\protect\AD)} are necessary since I do not need them in description?

Some fields are expanded by default and some aren't. These are described in more detail in section 4.4 Expansion in the glossaries manual, but essentially the name, description and symbol fields aren't expanded by default and all others are. The sort key is an exception which is covered by the sanitizesort package option. Those fields that are expanded must have fragile commands protected.
To switch off all expansion use \glsnoexpandfields. Specific fields can have the expansion switched off with \glssetnoexpandfield{field}. This individual setting overrides the \glsexpandfields setting.