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