Compiling Win32-GUI-1.14 with cl from Visual Studio 2014, I came across a case where PERLUD_DECLARE can be defined to nothing, leaving to a statement that cl compiler dislike, i.e.:
typedef struct tagPERLWIN32GUI_USERDATA {
DWORD dwSize; // struct size (our signature)
; // a pointer to the Perl Object
SV* svSelf; // a pointer to ourself
etc
A proposed patch is attached.