The default type of a signal is a vector.
In Icarus all signals are vectors so when asking for the vpiObjTypeVal we need to return the vpiVectorVal.
This commit is contained in:
parent
5660e67b8b
commit
66ce204771
|
|
@ -679,10 +679,9 @@ static void signal_get_value(vpiHandle ref, s_vpi_value*vp)
|
||||||
format_vpiBinStrVal(vsig, 0, wid, vp);
|
format_vpiBinStrVal(vsig, 0, wid, vp);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case vpiHexStrVal: {
|
case vpiHexStrVal:
|
||||||
format_vpiHexStrVal(vsig, 0, wid, vp);
|
format_vpiHexStrVal(vsig, 0, wid, vp);
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
|
|
||||||
case vpiOctStrVal:
|
case vpiOctStrVal:
|
||||||
format_vpiOctStrVal(vsig, 0, wid, vp);
|
format_vpiOctStrVal(vsig, 0, wid, vp);
|
||||||
|
|
@ -696,14 +695,14 @@ static void signal_get_value(vpiHandle ref, s_vpi_value*vp)
|
||||||
format_vpiStringVal(vsig, 0, wid, vp);
|
format_vpiStringVal(vsig, 0, wid, vp);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
case vpiObjTypeVal:
|
||||||
case vpiVectorVal:
|
case vpiVectorVal:
|
||||||
format_vpiVectorVal(vsig, 0, wid, vp);
|
format_vpiVectorVal(vsig, 0, wid, vp);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case vpiRealVal: {
|
case vpiRealVal:
|
||||||
format_vpiRealVal(vsig, 0, wid, rfp->signed_flag, vp);
|
format_vpiRealVal(vsig, 0, wid, rfp->signed_flag, vp);
|
||||||
break;
|
break;
|
||||||
}
|
|
||||||
|
|
||||||
default:
|
default:
|
||||||
fprintf(stderr, "vvp internal error: get_value: "
|
fprintf(stderr, "vvp internal error: get_value: "
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue