https://bugs.winehq.org/show_bug.cgi?id=47159
Bug ID: 47159 Summary: widl ignores calling convention when declaring functions with extraneous parenthesis Product: Wine Version: 4.6 Hardware: x86 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: rpc Assignee: wine-bugs@winehq.org Reporter: richard@torproject.org Distribution: ---
When declaring a __stdcall function foo like so widl discards the calling convention attribute.
This snippet:
void (__stdcall foo)(void);
will generate:
void foo(void);
A bit of an edge case, looks like the parser grammar will need to be changed. As a side effect, this snippet:
extern int (__stdcall someval);
will generate:
extern int someval;
https://bugs.winehq.org/show_bug.cgi?id=47159
Zebediah Figura z.figura12@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |z.figura12@gmail.com
--- Comment #1 from Zebediah Figura z.figura12@gmail.com --- (In reply to Richard Pospesel from comment #0)
A bit of an edge case, looks like the parser grammar will need to be changed. As a side effect, this snippet:
extern int (__stdcall someval);
will generate:
extern int someval;
I'm curious what this is supposed to mean, exactly? Presumably we should just error out in this case. (Side note: MIDL actually does this too.)