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