> > >+ if (INTEGRAL_TYPE_P (TREE_TYPE (t)) > > >+ && (TYPE_PRECISION (TREE_TYPE (t)) > > >+ != TREE_INT_CST_LOW (TREE_OPERAND (t, 1)))) > > >+ { > > >+ error ("integral result type precision does not match " > > >+ "field size of BIT_FIELD_REF"); > > >+ return t; > > >+ } > > >+ if (!INTEGRAL_TYPE_P (TREE_TYPE (t)) > > > > 'else if' here? > > In theory, yes, but, why?
It's easier to read at-a-glance. A reader can tell quickly that the intent is that only one of the options be taken. It's easier to spot the "else" than the "return" in the body.