Nested FESpace

Hi everyone;
I would like to use a higher (4) dimensional FESpace. As I hope to speed up calculations it is split up into regions; I construct it as shown

        fes = []
        for reg in regions:
            feU   = H1(mesh, order=2, dirichlet=dc0, complex=True, definedon=reg)
            fes.append(feU*feU*feU)
        fes = FESpace(fes)

This seems to allow the construction of BilinearForms in a familiar manner:

        u, v = fes.TnT()
        mass = BilinearForm(fes)
        for _u, _v  in zip(u, v):
            mass += CF(tuple(_u))*CF(tuple(_v))*dx

However, this produces the warning

used dof inconsistency

So something is possibly not working; in addition I would like to impose dirichlet boundary conditions.
Without the splitting into regions this looks like

        gfu = GridFunction(fes) 
        gfu.components[2].Set(self.mesh.BoundaryCF({1: 'some_name'}), 
                                   definedon=mesh.Boundaries('other_name')))

I was not able to transfer that into the case of a ‘nested’ FESpace; the Gridfunction appears to have the same number of components as there is regions and no ‘subdivision’.
I could not find my problem in the documented examples so some help is highly appreciated.