pidl needs to check whether variables used in expressions attribute bodies (for example in switch_is(), length_is(), size_is()) can be NULL. If they can, it needs to add a check to the generated code to not use the expression if one of these variables is NULL. This could easily be implemented using a companion function to ParseExpr() that simply returns a list of variables that can be NULL.
Fixed in r20638.