%Error: t/t_var_types_bad.v:38: Illegal bit or array select; type does not have a bit range, or bad dimension: type is bit
                              : ... In instance t
      d_bitz[0] = 1'b1;          
            ^
%Error: t/t_var_types_bad.v:39: Illegal bit or array select; type does not have a bit range, or bad dimension: type is logic
                              : ... In instance t
      d_logicz[0] = 1'b1;        
              ^
%Error: t/t_var_types_bad.v:40: Illegal bit or array select; type does not have a bit range, or bad dimension: type is logic
                              : ... In instance t
      d_regz[0] = 1'b1;          
            ^
%Error: t/t_var_types_bad.v:45: Illegal bit or array select; type does not have a bit range, or bad dimension: type is real
                              : ... In instance t
      d_real[0] = 1'b1;          
            ^
%Error: t/t_var_types_bad.v:45: Expected integral (non-real) input to SEL
                              : ... In instance t
      d_real[0] = 1'b1;          
      ^~~~~~
%Warning-REALCVT: t/t_var_types_bad.v:45: Implicit conversion of real to integer
      d_real[0] = 1'b1;          
      ^~~~~~
                  ... Use "/* verilator lint_off REALCVT */" and lint_on around source to disable this message.
%Error: t/t_var_types_bad.v:46: Illegal bit or array select; type does not have a bit range, or bad dimension: type is real
                              : ... In instance t
      d_realtime[0] = 1'b1;      
                ^
%Error: t/t_var_types_bad.v:46: Expected integral (non-real) input to SEL
                              : ... In instance t
      d_realtime[0] = 1'b1;      
      ^~~~~~~~~~
%Warning-REALCVT: t/t_var_types_bad.v:46: Implicit conversion of real to integer
      d_realtime[0] = 1'b1;      
      ^~~~~~~~~~
%Error: Exiting due to
