10

When using the todonotes package with the IEEEtran template, I seem to reach a limit after putting 50 \todo{} on one page.

When compiling the document, I get the following error:

Output loop---100 consecutive dead cycles.

I could solve it by inserting \maxdeadcycles=200 in the preamble.

However, I would like to understand where this error comes from, and if there is be a more elegant technique to solve this problem.

Stefan Pinnow
  • 29,535
T. Braud
  • 101
  • 1
  • 1
  • 4

4 Answers4

9

This is a low level tex error, latex is trying to arrange boxes to find a feasible place to make a page break, it has cycled 100 times (which is about 98 times more than usual) and failed to find any feasible page break at this point, so it has given up. Without seeing your input is hard to guess the cause. But if you know you just have difficult material and setting this higher fixes it that is OK. (Almost always when you get this error tex is in an infinite loop and increasing the number of tries does not help, but that is apparently not the case here)

\marginpar and related commands force at least one extra cycle as the output routine is called to measure the position without shipping out a page, so I think if you have so many notes increasing \maxdeadcycles is not unreasonable.

David Carlisle
  • 757,742
  • This is one of the reasons why I use a well configured fixme \fxnote instead. Yes it does not have the marker back to the error and they will overlap, but it can be used everywhere and \listoffixmes is really nice to have. – daleif Jan 11 '18 at 10:44
2

A simple solution is to manually add a pagebreak at the point where this error occurs. Simply adding \newpage solved this problem for me.

Peaceful
  • 175
1

You can also use \clearpage command by introducing boundaries for float objects.

Mensch
  • 65,388
Alexander
  • 111
-1

Not very related to "todonotes" but I encountered this error because of this command \addtolength{\textheight}{-15cm} in IEEE ieeeconf

To resolve it, simply adjust the number -15cm to something smaller e.g. -5cm or -0cm.

Vincent
  • 20,157
tngotran
  • 341