I am trying to build 64 drivers using gcc.
I actually got a driver working now but had to fix a problem in winddk.h
winddk.h has the following line just before "typedef struct _IO_STACK_LOCATION":
    #include <pshpack4.h>
That causes gcc to ignore the "POINTER_ALIGNMENT" attributes used
inside this struct.
So it does not align these fields to the next 8 byte multiple as
required for 64 bit.
I now removed the "#include <pshpack4.h>" and the "#include
<poppack.h>" at the end
and that make the structure work properly on 64 bit for at least the iocontrol.

Wiljan

_______________________________________________
Ros-dev mailing list
[email protected]
http://www.reactos.org/mailman/listinfo/ros-dev

Reply via email to