Hi, I keep finding places in GCC sources that check whether a member of TYPE_ARG_TYPES is 0. For example,
for (link = TYPE_ARG_TYPES (function_or_method_type); link && TREE_VALUE (link); link = TREE_CHAIN (link)) gen_type_die (TREE_VALUE (link), context_die); Notice that TREE_VALUE (link) is part of the loop condition. Now, do we ever allow a NULL in TYPE_ARG_TYPES? If so, what does that mean? My guess is that soneone was trying to be cautious about encountering a NULL in TYPE_ARG_TYPES. (If that's the case, we should be using gcc_assert instead.) Thanks, Kazu Hirata