Commit becfc7c3 authored by Kevin Locke's avatar Kevin Locke Committed by David Gibson

configurator: Return pointer difference as ptrdiff_t

On LLP64 systems (like 64-bit Windows) long is 32 bits while pointers
are 64 bits, which results in a warning similar to the following:

warning C4244: 'return': conversion from '__int64' to 'long', possible loss of data

for HAVE_STACK_GROWS_UPWARDS.  Fix this by using the ptrdiff_t type
introduced by C99 for this purpose.
Signed-off-by: default avatarKevin Locke <kevin@kevinlocke.name>
Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
parent c455d555
......@@ -278,7 +278,8 @@ static struct test tests[] = {
" return __stop_mysec - __start_mysec;\n"
"}\n" },
{ "HAVE_STACK_GROWS_UPWARDS", DEFINES_EVERYTHING|EXECUTE, NULL, NULL,
"static long nest(const void *base, unsigned int i)\n"
"#include <stddef.h>\n"
"static ptrdiff_t nest(const void *base, unsigned int i)\n"
"{\n"
" if (i == 0)\n"
" return (const char *)&i - (const char *)base;\n"
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment