Package: paml / 4.9j+dfsg-6
Metadata
| Package | Version | Patches format |
|---|---|---|
| paml | 4.9j+dfsg-6 | 3.0 (quilt) |
Patch series
view the series file| Patch | File delta | Description |
|---|---|---|
| gcc10.patch | (download) |
src/paml.h |
4 2 + 2 - 0 ! |
fix ftbfs with gcc 10 |
| hardening.patch | (download) |
src/Makefile |
24 12 + 12 - 0 ! |
enable propagation of hardening flags |
| add_clean_target.patch | (download) |
src/Makefile |
4 4 + 0 - 0 ! |
add clean target to upstream makefile |
| gcc14.patch | (download) |
src/basemlg.c |
4 3 + 1 - 0 ! |
fix incompatible pointer types with gcc 14.
This patch fixes a number of build failures caused by incompatible
pointer types, now fatal with gcc 14. Typical symptom looks like:
.
In file included from baseml.c:131:
treesub.c: In function IdenticalSeqs:
In file included from codeml.c:238:
treesub.c: In function IdenticalSeqs:
treesub.c:1310:33: error: passing argument 3 of printSeqs from incompatible pointer type [-Wincompatible-pointer-types]
1310 | printSeqs(ftmp, com.z, com.spname, com.ns, com.ls, com.npatt, com.fpatt, NULL, keep, 1);
| ~~~^~~~~~~
| |
| char **
In file included from baseml.c:11:
paml.h:150:63: note: expected unsigned char ** but argument is of type char **
150 | void printSeqs(FILE *fout, unsigned char *z[], unsigned char *spnames[], int ns, int ls, int npatt, double fpatt[], int *pose, char keep[], int format);
| ~~~~~~~~~~~~~~~^~~~~~~~~
treesub.c:1310:33: error: passing argument 3 of printSeqs from incompatible pointer type [-Wincompatible-pointer-types]
1310 | printSeqs(ftmp, com.z, com.spname, com.ns, com.ls, com.npatt, com.fpatt, NULL, keep, 1);
| ~~~^~~~~~~
| |
| char **
.
Every time when a change was needed, the plain "char" type was favored
over the "unsigned char" type. This is to allow the compiler to set
the optimum char signature depending on the target CPU architecture
(e.g. signed char for x86_64, unsigned char for Aarch64).
|
| c23.patch | (download) |
src/mcmctree.c |
2 1 + 1 - 0 ! |
fix ftbfs with gcc 15
This patch fixes the following error, appearing with standard C 2023
compiler support:
.
treesub.c:8481:5: error: conflicting types for ProcessNodeAnnotation; have int(int *)
8481 | int ProcessNodeAnnotation(int *haslabel)
| ^~~~~~~~~~~~~~~~~~~~~
mcmctree.c:45:5: note: previous declaration of ProcessNodeAnnotation with type int(void)
45 | int ProcessNodeAnnotation();
| ^~~~~~~~~~~~~~~~~~~~~
|
