+ }
+ if (zclass == odr_ber_tag->lclass && tag == odr_ber_tag->ltag)
+ {
+ o->bp += odr_ber_tag->br;
+ *constructed = odr_ber_tag->lcons;
+ odr_ber_tag->lclass = -1;
+ return 1;
+ }
+ else
+ {
+ if (!opt)
+ {
+ odr_seterror(o, OREQUIRED, 27);
+ odr_setelement(o, name);
+ }
+ return 0;
+ }
+ case ODR_PRINT:
+ if (!*pp && !opt)
+ {
+ odr_seterror(o,OREQUIRED, 28);
+ odr_setelement(o, name);
+ }
+ return *pp != 0;
+ default:
+ odr_seterror(o, OOTHER, 29);
+ odr_setelement(o, name);
+ return 0;