UVM Connect Error with gcc 4.4

UVM Connect code shows error with the gcc 4.4 version, error message is :

/uvmc-2.2/src/connect/sc/uvmc_commands.h", line 1049: error: 
          argument of type "bits_t" is incompatible with parameter of type
          "bits_t *"
    packer->init_pack(bits);
                      ^

"/uvmc-2.2/src/connect/sc/uvmc_commands.h", line 1052: error: 
          argument of type "bits_t" is incompatible with parameter of type
          "const bits_t *"
    UVMC_set_config_object(type_name,context,inst_name,field_name,bits);
                                                                  ^

"/uvmc-2.2/src/connect/sc/uvmc_commands.h", line 1201: error: 
          argument of type "bits_t" is incompatible with parameter of type
          "bits_t *"
    if (UVMC_get_config_object(type_name,context,inst_name,field_name,bits)) {
                                                                      ^

"/uvmc-2.2/src/connect/sc/uvmc_commands.h", line 1202: error: 
          argument of type "bits_t" is incompatible with parameter of type
          "const bits_t *"
      packer->init_unpack(bits);

same code works when older version of the code is used (e.g. gcc 4.1).

The uvm_packer class defines its method as:

void init_pack(bits_t *bits, int level=0);

But the caller is passing it, not a pointer but, the bit_t object itself.

template <class T, class CVRT>
void uvmc_set_config_object (const char* type_name,
                            const char* context,
                            const char* inst_name,
                            const char* field_name,
                            T &value,
                            uvmc_packer *packer=NULL) {
  static bits_t bits;
  static uvmc_packer def_packer;
  if (packer == NULL) {
    packer = &def_packer;
    //packer->big_endian = 0;
  }
  wait_sv_ready();
  packer->init_pack(bits);

Can someone suggest the update that might be required in UVM Connect code?

Thank You.