}
if (dtag == DW_TAG_volatile_type || dtag == DW_TAG_const_type
- || dtag == DW_TAG_restrict_type) {
+ || dtag == DW_TAG_restrict_type || dtag == DW_TAG_atomic_type) {
Int have_ty = 0;
VG_(memset)(&typeE, 0, sizeof(typeE));
typeE.cuOff = D3_INVALID_CUOFF;
typeE.tag = Te_TyQual;
typeE.Te.TyQual.qual
= (dtag == DW_TAG_volatile_type ? 'V'
- : (dtag == DW_TAG_const_type ? 'C' : 'R'));
+ : (dtag == DW_TAG_const_type ? 'C'
+ : (dtag == DW_TAG_restrict_type ? 'R' : 'A')));
/* target type defaults to 'void' */
typeE.Te.TyQual.typeR = D3_FAKEVOID_CUOFF;
nf_i = 0;
case 'C': VG_(printf)("const "); break;
case 'V': VG_(printf)("volatile "); break;
case 'R': VG_(printf)("restrict "); break;
+ case 'A': VG_(printf)("atomic "); break;
default: goto unhandled;
}
ML_(pp_TyEnt_C_ishly)(tyents, ent->Te.TyQual.typeR);