If we specify the same component in multiple components lines in a configuration
e.g two "components Main;" lines
we get the error "redefinition of 'Main'", when it isn't being redefine, but is a duplicate of an earlier definition. Provided that the same name maps to the same module in each case (i.e. no 'x as y' usage, or the same 'y'), I believe this should not be an error.
Under most normal circumstances, this isn't that much of a problem, but when we want to do things like generating parts of a configuration from #define'ed blocks, we have to know what's inside the blocks (which ruins part of their point).