Skip to content

Tk still broken on SrawberryPerl-5.38.2 #104

@sisyphus

Description

@sisyphus

There's absolutely nothing new about this issue - but it still hasn't been addressed.
The attached patch allows Tk to build on StrawberryPerl-5.38.2.

It's the same patch to X.h as provided at master...gh-87.
However, in addition to that, it also replaces (again in X.h) the following piece of non-portable code:

#if defined(_WIN64) && defined(_MSC_VER)
typedef __int64 XID;
#else
typedef unsigned long XID;
#endif

with a a rendition that ports correctly:

#if defined(_WIN64)
#   if defined(_MSC_VER)
    typedef __int64 XID;
#   else
    typedef unsigned long long XID;
#   endif
#else
typedef unsigned long XID;
#endif

I think that both of those fixes emanate from @chrstphrchvz. (The solution to the non-portability issue was identified in #92.)
They're not something for which I can claim any credit, and I'm not trying to stomp all over the excellent work of anyone else.
I just get very annoyed that this hasn't yet been fixed in https://github.com/eserte/perl-tk - and I am prepared to re-formulate this bug report as a PR, if that's what it's going to take.

Better still, of course, if we can also have a new cpan release that includes this fix, before perl-5.40 is released.
(This would greatly enhance the chances of having Tk included in the Strawberry Perl 5.40 release.)

win32_patch.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions