Patrik Stridvall ps@leissner.se writes:
Of course having an imperfect parser also means we cannot use it for the export info, because unlike relay debugging it needs to be 100% correct. So we either need compiler declspec support,
That will leave us dependent on compilers that support it.
Well, the idea would be not to depend on compiler support for the __declspec keyword itself, but more to have some clever macro replacements that output stuff in a special ELF section or something like that. This could then hopefully be made to work on most compilers. But I'm not sure if there's a good way to do that at all.
This isn't happend soon either. It might not be THAT difficult, however the code need not just work it needs be well structured and organized as well if any reasonable guarantees of correctness can be made.
I think most of all it needs to be simple. My idea is to run through the preprocessor, find the __declspec, and locate the corresponding function name, or die if there's anything it cannot parse. This should be reasonably foolproof. And IMO it shouldn't be in Perl, it should be part of winebuild.