Rob Shearman : widl: Use expr_resolve_type to get the type of the identifier in write_conf_or_var_desc .
Alexandre Julliard
julliard at winehq.org
Tue Apr 22 06:47:47 CDT 2008
Module: wine
Branch: master
Commit: 39a1fa672a6ca33505af8ef6db6d3e63414b06c1
URL: http://source.winehq.org/git/wine.git/?a=commit;h=39a1fa672a6ca33505af8ef6db6d3e63414b06c1
Author: Rob Shearman <rob at codeweavers.com>
Date: Tue Apr 22 11:36:54 2008 +0100
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.
---
tools/widl/typegen.c | 11 ++---------
1 files changed, 2 insertions(+), 9 deletions(-)
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 @@ static size_t write_conf_or_var_desc(FILE *file, const type_t *structure,
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 @@ static size_t write_conf_or_var_desc(FILE *file, const type_t *structure,
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);
More information about the wine-cvs
mailing list