Internal tristates should not be used. Tristate usage is only allowed in top-level entity.
architecture a of e is begin x <= a when (en = '0') else '1'; y <= b when (en = '0') else 'Z'; -- Noncompliant z <= c when (en = '0') else "ZZZZ"; -- Noncompliant end;