Task #5186
Updated by Davide Pesavento over 2 years ago
## Improvement no. 1
The overload of `Name::append()` that takes a `Block` has confusing semantics. It has a different behavior if the passed `Block` is a GenericNameComponent, but does not apply the same special treatment to other typed name components. And this gets even more confusing when we consider that we have another `append()` overload that takes a `Component` and that `Component` is a subclass of `Block`. This means that appending a non-generic name component may have very different results depending on whether it's passed as a `Block` or as a `Component`. I propose to deprecate and eventually remove the `Name::append(Block)` overload.
## Improvement no. 2
See #note-7
## Improvement no. 3
See #note-10