httpd-apreq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Randy Kobes <>
Subject Re: [multi-env] library/t/parsers.t on Win32
Date Fri, 11 Mar 2005 05:33:36 GMT
On Thu, 10 Mar 2005, Randy Kobes wrote:

> Currently on Win32 the first 3 tests of library/t/parsers.c
> fail, which involve comparing, for example,
>  f = apreq_parser(URL_ENCTYPE);
>  AT_eq(f, (apreq_parser_function_t)apreq_parser_urlencoded, "%pp");
> In trying to understand why, I looked at the following
> program, which uses a function get_fn(char) to return
> a function (either afn or bfn) depending on the argument
> passed in:
[ ... ]
> Perhaps someone with more knowledge of dlls will know why
> there's this difference, and in particular why the output of
> the last program has the pointers unequal. However, unless
> there's something fundamentally wrong in the last program,
> what I think this illustrates is that, when these functions
> are split off into a dll, a comparison of pointers in this
> way isn't straightforward. Thus, perhaps it makes sense
> to skip the first 3 tests of library/t/parsers.t on Win32?

I forgot to mention - on linux, with gcc, splitting the
functions off into a shared .so library, and then linking
the main program against this library, makes no difference
as far as comparing the pointers - they're still equal.

best regards,

View raw message