Hi The routine do_poplevl() in gcc/cp/semantics.c will return a uninitialised tree node if `stmts_are_full_exprs_p' is FALSE. Most if of the calls to do_poplevel() don't use the return value. One exception is in the routine finish_compound_stmt() My guess is that in do_poplevel() `t` should be initialised to NULL_TREE. Graham