I am not sure whether this is strange behaviour or I am misunderstanding what you can do with hier_blocks.
Problem is best described with an example:
from gnuradio import gr class h_block(gr.hier_block2):
def __init__(self): gr.hier_block2.__init__(self, "h_block", gr.io_signature(1,1,gr.sizeof_float), gr.io_signature(0,0,0))