Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

XawListChange 2nd parameter may or may not be const #32

Open
jamesjer opened this issue Mar 21, 2024 · 1 comment
Open

XawListChange 2nd parameter may or may not be const #32

jamesjer opened this issue Mar 21, 2024 · 1 comment

Comments

@jamesjer
Copy link
Contributor

Fedora Rawhide recently updated to libXaw 1.0.16 and now we have an incompatible pointer type issue yet again. The prototype for XawListChange has 5 parameters, 4 of which are the same across libXaw versions. The second parameter, list, has different types:

  • In libXaw 1.0.13 and earlier, it has type char **
  • In libXaw 1.0.14 and 1.0.15, it has type _Xconst char **
  • in libXaw 1.0.16, it has type String *, where String is a typedef for char *, so equivalent to char **

The libXaw 1.0.16 release notes say that a lot of client software was broken by the addition of const in version 1.0.14, so that change was reverted. I want to build xgap for Fedora 38, 39, 40, and Rawhide. We have libXaw 1.0.14 in Fedora 38 and 39, 1.0.15 in Fedora 40, and 1.0.16 in Rawhide.

To make things more fun, libXaw upstream has not provided any simple way of telling which prototype is going to be in scope. There is a preprocessor constant XawVersion, but its value is 7000002L in every release from 1.0.13 on. A version number that never changes does not seem very useful. Anyway, I guess some configure magic will be necessary to choose the right type for that second parameter.

@jengelh
Copy link

jengelh commented Nov 6, 2024

#33

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants