testing/pacparser: fix build with gcc 14

This commit is contained in:
mio 2024-09-14 01:27:22 +00:00 committed by Patrycja Rosa
parent 0d5154eb6a
commit e5c52a5534
2 changed files with 35 additions and 1 deletions

View file

@ -2,7 +2,7 @@
# Maintainer: Patrycja Rosa <alpine@ptrcnull.me>
pkgname=pacparser
pkgver=1.4.5
pkgrel=0
pkgrel=1
pkgdesc="A library to parse proxy auto-config (PAC) files"
url="https://pacparser.manugarg.com/"
arch="all"
@ -11,6 +11,7 @@ makedepends="bash python3-dev py3-setuptools"
subpackages="py3-$pkgname-pyc:pyc py3-$pkgname:pymod $pkgname-doc $pkgname-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/manugarg/pacparser/archive/refs/tags/v$pkgver.tar.gz
spidermonkey-make.patch
gcc14.patch
"
# secfixes:
@ -44,4 +45,5 @@ pymod() {
sha512sums="
fabbfa5c5ebd2a884187e53db27015b16587cba2ae30da1fdec92ca211b1f0ecd2839222341cd0eca9e709ada4e9efcd686b713e4f1e5621507070a6300ad164 pacparser-1.4.5.tar.gz
99753cfb450e685d866d80e33c58320584c15ec625a0745d4ea2b9d3a6eadb2308563d1b86bdc656a66d255b58a426a89cd5f14ea3b472d04a70a99ef3c1a2bf spidermonkey-make.patch
9fa2a02606a8fae20e36afa4700a62e2c2c2ab174d34d51f6821379520f21167df687bf5d98316916cfdc6451df418b777b67dfcea44d168f417328b9fb12cb0 gcc14.patch
"

View file

@ -0,0 +1,32 @@
Source: https://github.com/manugarg/pacparser/issues/194#issuecomment-2262030966
Fix -Wincompatible-pointer-types error with gcc 14.
```
jsapi.c: In function 'JS_ConvertArgumentsVA':
jsapi.c:96:35: error: passing argument 5 of 'TryArgumentFormatter' from
incompatible pointer type [-Wincompatible-pointer-types]
96 | #define JS_ADDRESSOF_VA_LIST(ap) (&(ap))
| ~^~~~~~
| |
| __va_list_tag **
jsapi.c:267:39: note: in expansion of macro 'JS_ADDRESSOF_VA_LIST'
267 | JS_ADDRESSOF_VA_LIST(ap))) {
| ^~~~~~~~~~~~~~~~~~~~
jsapi.c:137:44: note: expected '__va_list_tag (*)[1]' but argument is of type '__va_list_tag **'
137 | jsval **vpp, va_list *app)
| ~~~~~~~~~^~~
```
--
--- a/src/spidermonkey/js/src/jsapi.c
+++ b/src/spidermonkey/js/src/jsapi.c
@@ -93,7 +93,7 @@
#ifdef HAVE_VA_LIST_AS_ARRAY
#define JS_ADDRESSOF_VA_LIST(ap) ((va_list *)(ap))
#else
-#define JS_ADDRESSOF_VA_LIST(ap) (&(ap))
+#define JS_ADDRESSOF_VA_LIST(ap) ((va_list *)(&(ap)))
#endif
#if defined(JS_PARANOID_REQUEST) && defined(JS_THREADSAFE)