case OP_VAR_ENTRY_VALUE:
{
- struct block *b;
-
(*pos) += 2;
fprintf_filtered (stream, "%s@entry",
SYMBOL_PRINT_NAME (exp->elts[pc + 1].symbol));
fputs_filtered (")", stream);
return;
+ case UNOP_CAST_TYPE:
+ (*pos) += 1;
+ if ((int) prec > (int) PREC_PREFIX)
+ fputs_filtered ("(", stream);
+ fputs_filtered ("(", stream);
+ print_subexp (exp, pos, stream, PREC_PREFIX);
+ fputs_filtered (") ", stream);
+ print_subexp (exp, pos, stream, PREC_PREFIX);
+ if ((int) prec > (int) PREC_PREFIX)
+ fputs_filtered (")", stream);
+ return;
+
case UNOP_DYNAMIC_CAST:
case UNOP_REINTERPRET_CAST:
fputs_filtered (opcode == UNOP_DYNAMIC_CAST ? "dynamic_cast"
: "reinterpret_cast", stream);
fputs_filtered ("<", stream);
- (*pos) += 2;
- type_print (exp->elts[pc + 1].type, "", stream, 0);
+ (*pos) += 1;
+ print_subexp (exp, pos, stream, PREC_PREFIX);
fputs_filtered ("> (", stream);
print_subexp (exp, pos, stream, PREC_PREFIX);
fputs_filtered (")", stream);
fputs_filtered (")", stream);
return;
+ case UNOP_MEMVAL_TYPE:
+ (*pos) += 1;
+ if ((int) prec > (int) PREC_PREFIX)
+ fputs_filtered ("(", stream);
+ fputs_filtered ("{", stream);
+ print_subexp (exp, pos, stream, PREC_PREFIX);
+ fputs_filtered ("} ", stream);
+ print_subexp (exp, pos, stream, PREC_PREFIX);
+ if ((int) prec > (int) PREC_PREFIX)
+ fputs_filtered (")", stream);
+ return;
+
case UNOP_MEMVAL_TLS:
(*pos) += 3;
if ((int) prec > (int) PREC_PREFIX)
elt = dump_subexp (exp, stream, elt);
}
break;
- case UNOP_MEMVAL:
- case UNOP_CAST:
case UNOP_DYNAMIC_CAST:
case UNOP_REINTERPRET_CAST:
+ case UNOP_CAST_TYPE:
+ case UNOP_MEMVAL_TYPE:
+ ++elt;
+ fprintf_filtered (stream, " (");
+ elt = dump_subexp (exp, stream, elt);
+ fprintf_filtered (stream, ")");
+ elt = dump_subexp (exp, stream, elt);
+ break;
+ case UNOP_MEMVAL:
+ case UNOP_CAST:
fprintf_filtered (stream, "Type @");
gdb_print_host_address (exp->elts[elt].type, stream);
fprintf_filtered (stream, " (");
fprintf_filtered (stream, ")");
elt += 2;
break;
+ case OP_TYPEOF:
+ case OP_DECLTYPE:
+ fprintf_filtered (stream, "Typeof (");
+ elt = dump_subexp (exp, stream, elt);
+ fprintf_filtered (stream, ")");
+ break;
case STRUCTOP_STRUCT:
case STRUCTOP_PTR:
{
break;
case TYPE_INSTANCE:
{
- char *elem_name;
LONGEST len;
len = exp->elts[elt++].longconst;