Цикл будет, но в другом месте. Попробуй запусти этот макрос для `case class A(a: A)`.