widl: Use expr_resolve_type to get the type of the identifier in write_conf_or_var_desc. Remove the conversion of pointer types into base types as this was only needed due to lack of proper type resolving.
diff --git a/tools/widl/typegen.c b/tools/widl/typegen.c index 8a4b8f5..7a5f6f9 100644 --- a/tools/widl/typegen.c +++ b/tools/widl/typegen.c
@@ -655,6 +655,8 @@ error("write_conf_or_var_desc: couldn't find variable %s in structure\n", subexpr->u.sval); + correlation_variable = expr_resolve_type(NULL, structure, expr); + offset -= baseoff; correlation_variable_type = correlation_variable->type; @@ -683,15 +685,6 @@ case RPC_FC_ULONG: param_type = RPC_FC_ULONG; break; - case RPC_FC_RP: - case RPC_FC_UP: - case RPC_FC_OP: - case RPC_FC_FP: - if (sizeof(void *) == 4) /* FIXME */ - param_type = RPC_FC_LONG; - else - param_type = RPC_FC_HYPER; - break; default: error("write_conf_or_var_desc: conformance variable type not supported 0x%x\n", correlation_variable_type);