diff --git a/reactos/tools/widl/proxy.c b/reactos/tools/widl/proxy.c index 3a35cde7aad..4476e39d146 100644 --- a/reactos/tools/widl/proxy.c +++ b/reactos/tools/widl/proxy.c @@ -744,11 +744,11 @@ void write_proxies(const statement_list_t *stmts) fprintf(proxy, "const ExtendedProxyFileInfo %s_ProxyFileInfo =\n", file_id); fprintf(proxy, "{\n"); - fprintf(proxy, " (const PCInterfaceProxyVtblList*)&_%s_ProxyVtblList,\n", file_id); - fprintf(proxy, " (const PCInterfaceStubVtblList*)&_%s_StubVtblList,\n", file_id); + fprintf(proxy, " (const PCInterfaceProxyVtblList*)_%s_ProxyVtblList,\n", file_id); + fprintf(proxy, " (const PCInterfaceStubVtblList*)_%s_StubVtblList,\n", file_id); fprintf(proxy, " _%s_InterfaceNamesList,\n", file_id); fprintf(proxy, " 0,\n"); - fprintf(proxy, " &_%s_IID_Lookup,\n", file_id); + fprintf(proxy, " _%s_IID_Lookup,\n", file_id); fprintf(proxy, " %d,\n", c); fprintf(proxy, " 1,\n"); fprintf(proxy, " 0,\n"); diff --git a/reactos/tools/widl/utils.c b/reactos/tools/widl/utils.c index 1730e41c608..2e05addeb7a 100644 --- a/reactos/tools/widl/utils.c +++ b/reactos/tools/widl/utils.c @@ -66,18 +66,6 @@ static void generic_msg(const loc_info_t *loc_info, const char *s, const char *t } -/* yyerror: yacc assumes this is not newline terminated. */ -void parser_error(const char *s, ...) -{ - loc_info_t cur_location = CURRENT_LOCATION; - va_list ap; - va_start(ap, s); - generic_msg(&cur_location, s, "Error", ap); - fprintf(stderr, "\n"); - va_end(ap); - exit(1); -} - void error_loc(const char *s, ...) { loc_info_t cur_loc = CURRENT_LOCATION; @@ -88,6 +76,12 @@ void error_loc(const char *s, ...) exit(1); } +/* yyerror: yacc assumes this is not newline terminated. */ +void parser_error(const char *s) +{ + error_loc("%s\n", s); +} + void error_loc_info(const loc_info_t *loc_info, const char *s, ...) { va_list ap; diff --git a/reactos/tools/widl/utils.h b/reactos/tools/widl/utils.h index 761d3b46453..5c440be8c01 100644 --- a/reactos/tools/widl/utils.h +++ b/reactos/tools/widl/utils.h @@ -33,7 +33,7 @@ char *xstrdup(const char *str); #define __attribute__(X) #endif -void parser_error(const char *s, ...) __attribute__((format (printf, 1, 2))) __attribute__((noreturn)); +void parser_error(const char *s) __attribute__((noreturn)); int parser_warning(const char *s, ...) __attribute__((format (printf, 1, 2))); void error_loc(const char *s, ...) __attribute__((format (printf, 1, 2))) __attribute__((noreturn)); void error(const char *s, ...) __attribute__((format (printf, 1, 2))) __attribute__((noreturn));