- case 'P': {
- const source_position_t *pos = va_arg(ap, const source_position_t *);
- print_source_position(stderr, pos);
- break;
+ case 'N': {
+ entity_t const *const ent = va_arg(ap, entity_t const*);
+ if (extended && is_declaration(ent)) {
+ print_type_ext(ent->declaration.type, ent->base.symbol, NULL);
+ } else {
+ char const *const kind = get_entity_kind_name(ent->kind);
+ symbol_t const *const sym = ent->base.symbol;
+ if (sym) {
+ fprintf(stderr, "%s %s", kind, sym->string);
+ } else {
+ fprintf(stderr, "anonymous %s", kind);