Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!ucbvax!TRIUMFRG.BITNET!ASND From: ASND@TRIUMFRG.BITNET (Donald Arseneau) Newsgroups: comp.text.tex Subject: RE: Counters in List Environment Message-ID: <0988B466B0000D2D@Post-Office.UH.EDU> Date: 4 May 91 00:36:00 GMT Sender: daemon@ucbvax.BERKELEY.EDU Lines: 32 Yes, LaTeX does process the label in a list environment twice, which can lead to double increments of counters. The relevant definitions are: \def\@item[#1]{ ... ... \everypar{... ... \setbox\@tempboxa\hbox{\makelabel{#1}}% \global\setbox\@labels \hbox{\unhbox\@labels \hskip \itemindent \hskip -\labelwidth \hskip -\labelsep \ifdim \wd\@tempboxa >\labelwidth \box\@tempboxa \else \hbox to\labelwidth {\makelabel{#1}}\fi \hskip \labelsep}\ignorespaces} It is clear that "#1" can be performed twice. There is a safer way to handle the labels, and it is even more efficient! I am surprised that it isn't what LaTeX does. Replace the second-last line quoted above with: \else \hbox to\labelwidth {\unhbox\@tempboxa}\fi Note: This is from an old version of LaTeX, so this MIGHT have been fixed! Donald Arseneau asnd@reg.triumf.ca asnd@triumfcl