works: 1. foo += a 2. foo += b 3. foo += c does not work: 2. foo += b 3. foo += c 1. foo += a (a is never built)