Вы можете опустить имя переменной при использовании rand_mode (1) для установки всех переменных в объекте, в соответствии с разделом 18.8 LRM 1800-2017
т.е.
h1.rand_mode(1);
// is equivalent to
h1.h1_a.rand_mode(1);
h1.h1_b.rand_mode(1);
h1.h1_c.rand_mode(1);
И это должно рекурсивно сойти в h1.h1_c с установкой его переменных rand_mode. Но я бы проверил ваш инструмент, так как это поведение не очевидно из чтения LRM.