--- Begin Message ---
- To: Debian Bug Tracking System <submit@bugs.debian.org>
- Subject: buster-pu: package libcgns/3.3.0-7~deb10u1
- From: Andreas Beckmann <anbe@debian.org>
- Date: Tue, 14 Jan 2020 01:33:56 +0100
- Message-id: <157896203604.13464.13191402690192697450.reportbug@zam581.zam.kfa-juelich.de>
Package: release.debian.org
Severity: normal
Tags: buster
User: release.debian.org@packages.debian.org
Usertags: pu
Hi,
let's fix the FTBFS of libcgns on ppc64el with GCC 8.3. #944127
The current binaries in buster were built with GCC 8.2 which still
permitted this kind of invalid code.
The package is already uploaded.
Andreas
diff -Nru libcgns-3.3.0/debian/changelog libcgns-3.3.0/debian/changelog
--- libcgns-3.3.0/debian/changelog 2018-03-06 21:22:21.000000000 +0100
+++ libcgns-3.3.0/debian/changelog 2020-01-14 01:10:12.000000000 +0100
@@ -1,3 +1,16 @@
+libcgns (3.3.0-7~deb10u1) buster; urgency=medium
+
+ * Rebuild for buster.
+
+ -- Andreas Beckmann <anbe@debian.org> Tue, 14 Jan 2020 01:10:12 +0100
+
+libcgns (3.3.0-7) unstable; urgency=medium
+
+ * Backport fix from experimental
+ * New patch gcc-pr92361.patch to fix FTBFS on ppcel64 (closes: #944127)
+
+ -- Gilles Filippini <pini@debian.org> Sat, 16 Nov 2019 10:19:19 +0100
+
libcgns (3.3.0-6) unstable; urgency=medium
[ Aurelien Jarno ]
diff -Nru libcgns-3.3.0/debian/patches/gcc-pr92361.patch libcgns-3.3.0/debian/patches/gcc-pr92361.patch
--- libcgns-3.3.0/debian/patches/gcc-pr92361.patch 1970-01-01 01:00:00.000000000 +0100
+++ libcgns-3.3.0/debian/patches/gcc-pr92361.patch 2019-11-16 10:14:16.000000000 +0100
@@ -0,0 +1,557 @@
+Description: Neither Fortran standard nor gfortran support calling
+ vararg C function from Fortran. It used to work 'by chance' for
+ most Debian supported architectures, but was broken for POWER by
+ GCC PR fortran/87689 [1].
+ This GCC PR request [2] explains it all.
+ .
+ [1] https://gcc.gnu.org/viewcvs/gcc?view=revision&revision=268992
+ [2] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92361
+Author: Gilles Filippini <pini@debian.org>
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=944127
+Forwarded: https://cgnsorg.atlassian.net/browse/CGNS-179
+Index: libcgns/src/cg_ftoc.c
+===================================================================
+--- libcgns.orig/src/cg_ftoc.c
++++ libcgns/src/cg_ftoc.c
+@@ -2652,11 +2652,8 @@ CGNSDLL void __stdcall cg_goto_f(cgint_f
+ CGNSDLL void FMNAME(cg_goto_f, CG_GOTO_F)(cgint_f *fn, cgint_f *B, cgint_f *ier, ...)
+ #endif
+ {
+-#ifdef _CRAY
+- _fcd cray_string;
+-#endif
+- char *f_label[CG_MAX_GOTO_DEPTH], *label[CG_MAX_GOTO_DEPTH];
+- int index[CG_MAX_GOTO_DEPTH], n, i, len[CG_MAX_GOTO_DEPTH];
++ char *label[CG_MAX_GOTO_DEPTH];
++ int index[CG_MAX_GOTO_DEPTH], n, i;
+ va_list ap;
+
+ /* initialize ap to the last parameter before the variable argument list */
+@@ -2666,19 +2663,9 @@ CGNSDLL void FMNAME(cg_goto_f, CG_GOTO_F
+
+ /* read arguments */
+ for (n = 0; n < CG_MAX_GOTO_DEPTH; n++) {
+-#ifdef _CRAY
+- cray_string = va_arg(ap, _fcd);
+- f_label[n] = _fcdtocp(cray_string);
+- len[n] = _fcdlen(cray_string);
+-#else
+- f_label[n] = va_arg(ap, char *);
+-# ifdef WIN32_FORTRAN
+- /* In Windows, the arguments appear in a different order: char*, len, index,...*/
+- len[n] = (int)va_arg(ap, int);
+-# endif
+-#endif
+- if (f_label[n][0] == ' ' || 0 == strncmp(f_label[n],"end",3) ||
+- 0 == strncmp(f_label[n],"END",3)) break;
++ label[n] = va_arg(ap, char *);
++ if (label[n][0] == ' ' || 0 == strncmp(label[n],"end",3) ||
++ 0 == strncmp(label[n],"END",3)) break;
+
+ index[n] = (int)*(va_arg(ap, cgint_f *));
+ if (index[n] < 0) {
+@@ -2688,19 +2675,8 @@ CGNSDLL void FMNAME(cg_goto_f, CG_GOTO_F
+ }
+ }
+
+-#if !defined(_CRAY) && !defined(WIN32_FORTRAN)
+- for (i=0; i<n; i++) {
+- len[i] = va_arg(ap, int);
+- }
+-#endif
+ va_end(ap);
+
+- /* convert strings to C-strings */
+- for (i=0; i < n; i++) {
+- label[i] = CGNS_NEW(char,len[i]+1);
+- string_2_C_string(f_label[i], len[i], label[i], len[i], ier);
+- }
+-
+ #if DEBUG_GOTO
+ printf("\nIn cg_ftoc.c: narguments=%d\n",n);
+ for (i=0; i<n; i++) printf("\targ %d: '%s' #%d\n",i,label[i], index[i]);
+@@ -2708,7 +2684,6 @@ CGNSDLL void FMNAME(cg_goto_f, CG_GOTO_F
+
+ *ier = (cgint_f)cgi_set_posit((int)*fn, (int)*B, n, index, label);
+
+- for (i=0; i<n; i++) CGNS_FREE(label[i]);
+ return;
+ }
+
+@@ -2720,11 +2695,8 @@ CGNSDLL void __stdcall cg_gorel_f(cgint_
+ CGNSDLL void FMNAME(cg_gorel_f, CG_GOREL_F)(cgint_f *fn, cgint_f *ier, ...)
+ #endif
+ {
+-#ifdef _CRAY
+- _fcd cray_string;
+-#endif
+- char *f_label[CG_MAX_GOTO_DEPTH], *label[CG_MAX_GOTO_DEPTH];
+- int index[CG_MAX_GOTO_DEPTH], n, i, len[CG_MAX_GOTO_DEPTH];
++ char *label[CG_MAX_GOTO_DEPTH];
++ int index[CG_MAX_GOTO_DEPTH], n, i;
+ va_list ap;
+
+ if (posit == 0) {
+@@ -2745,19 +2717,9 @@ CGNSDLL void FMNAME(cg_gorel_f, CG_GOREL
+
+ /* read arguments */
+ for (n = 0; n < CG_MAX_GOTO_DEPTH; n++) {
+-#ifdef _CRAY
+- cray_string = va_arg(ap, _fcd);
+- f_label[n] = _fcdtocp(cray_string);
+- len[n] = _fcdlen(cray_string);
+-#else
+- f_label[n] = va_arg(ap, char *);
+-# ifdef WIN32_FORTRAN
+- /* In Windows, the arguments appear in a different order: char*, len, index,...*/
+- len[n] = va_arg(ap, int);
+-# endif
+-#endif
+- if (f_label[n][0] == ' ' || 0 == strncmp(f_label[n],"end",3) ||
+- 0 == strncmp(f_label[n],"END",3)) break;
++ label[n] = va_arg(ap, char *);
++ if (label[n][0] == ' ' || 0 == strncmp(label[n],"end",3) ||
++ 0 == strncmp(label[n],"END",3)) break;
+
+ index[n] = (int)*(va_arg(ap, cgint_f *));
+ if (index[n] < 0) {
+@@ -2767,19 +2729,8 @@ CGNSDLL void FMNAME(cg_gorel_f, CG_GOREL
+ }
+ }
+
+-#if !defined(_CRAY) && !defined(WIN32_FORTRAN)
+- for (i=0; i<n; i++) {
+- len[i] = va_arg(ap, int);
+- }
+-#endif
+ va_end(ap);
+
+- /* convert strings to C-strings */
+- for (i=0; i < n; i++) {
+- label[i] = CGNS_NEW(char,len[i]+1);
+- string_2_C_string(f_label[i], len[i], label[i], len[i], ier);
+- }
+-
+ #if DEBUG_GOTO
+ printf("\nIn cg_ftoc.c: narguments=%d\n",n);
+ for (i=0; i<n; i++) printf("\targ %d: '%s' #%d\n",i,label[i], index[i]);
+@@ -2787,10 +2738,37 @@ CGNSDLL void FMNAME(cg_gorel_f, CG_GOREL
+
+ *ier = (cgint_f)cgi_update_posit(n, index, label);
+
+- for (i=0; i<n; i++) CGNS_FREE(label[i]);
+ return;
+ }
+
++CGNSDLL void FMNAME(cg_goto_f1, CG_GOTO_F1)(cgint_f *fn, cgint_f *B, cgint_f *ier, STR_PSTR(name), cgint_f *index STR_PLEN(name))
++{
++ int length;
++ char *c_name;
++
++ length = (int) STR_LEN(name);
++ c_name = CGNS_NEW(char, length+1);
++
++ string_2_C_string(STR_PTR(name), STR_LEN(name), c_name, length, ier);
++ if (*ier == 0)
++ FMNAME(cg_goto_f, CG_GOTO_F)(fn, B, ier, c_name, index, "end");
++ CGNS_FREE(c_name);
++}
++
++CGNSDLL void FMNAME(cg_gorel_f1, CG_GOREL_F1)(cgint_f *fn, cgint_f *ier, STR_PSTR(name), cgint_f *index STR_PLEN(name))
++{
++ int length;
++ char *c_name;
++
++ length = (int) STR_LEN(name);
++ c_name = CGNS_NEW(char, length+1);
++
++ string_2_C_string(STR_PTR(name), STR_LEN(name), c_name, length, ier);
++ if (*ier == 0)
++ FMNAME(cg_gorel_f, CG_GOREL_F)(fn, ier, c_name, index, "end");
++ CGNS_FREE(c_name);
++}
++
+ /*-----------------------------------------------------------------------*/
+
+ CGNSDLL void FMNAME(cg_gopath_f, CG_GOPATH_F) (cgint_f *fn,
+Index: libcgns/src/cgns_f.F90
+===================================================================
+--- libcgns.orig/src/cgns_f.F90
++++ libcgns/src/cgns_f.F90
+@@ -3082,20 +3082,29 @@ MODULE cgns
+ ! Go - To Function *
+ ! - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - */
+
+-!!$ INTERFACE
+-!!$ SUBROUTINE cg_goto_f, CG_GOTO_F)(cgint_f *fn, cgint_f *B, ier, ...)
+-!!$cgint_f *fn, cgint_f *B, ier, ...)
+-!!$
+-!!$ INTEGER, INTENT(OUT) :: ier
+-!!$ END SUBROUTINE
+-!!$ END INTERFACE
+-!!$
+-!!$ INTERFACE
+-!!$ SUBROUTINE cg_gorel_f, CG_GOREL_F)(cgint_f *fn, ier, ...)
+-!!$cgint_f *fn, ier, ...)
+-!!$ INTEGER, INTENT(OUT) :: ier
+-!!$ END SUBROUTINE
+-!!$ END INTERFACE
++ INTERFACE
++ SUBROUTINE cg_goto_f1(fn, B, ier, &
++ name1, index1)
++ IMPORT :: c_char
++ IMPLICIT NONE
++ INTEGER :: fn
++ INTEGER :: B
++ INTEGER, INTENT(OUT) :: ier
++ CHARACTER(KIND=C_CHAR), DIMENSION(*) :: name1
++ INTEGER :: index1
++ END SUBROUTINE
++ END INTERFACE
++ INTERFACE
++ SUBROUTINE cg_gorel_f1(fn, ier, &
++ name1, index1)
++ IMPORT :: c_char
++ IMPLICIT NONE
++ INTEGER :: fn
++ INTEGER, INTENT(OUT) :: ier
++ CHARACTER(KIND=C_CHAR), DIMENSION(*) :: name1
++ INTEGER :: index1
++ END SUBROUTINE
++ END INTERFACE
+
+ INTERFACE
+ SUBROUTINE cg_gopath_f(fn,path, ier) !BIND(C, NAME="cg_gopath_f")
+@@ -4926,6 +4935,332 @@ MODULE cgns
+
+ CONTAINS
+
++ SUBROUTINE cg_goto_f(fn, B, ier, &
++ name1, index1, &
++ name2, index2, &
++ name3, index3, &
++ name4, index4, &
++ name5, index5, &
++ name6, index6, &
++ name7, index7, &
++ name8, index8, &
++ name9, index9, &
++ name10, index10, &
++ name11, index11, &
++ name12, index12, &
++ name13, index13, &
++ name14, index14, &
++ name15, index15, &
++ name16, index16, &
++ name17, index17, &
++ name18, index18, &
++ name19, index19, &
++ name20)
++ IMPLICIT NONE
++ INTEGER :: fn
++ INTEGER :: B
++ INTEGER, INTENT(OUT) :: ier
++ CHARACTER(*) :: name1
++ INTEGER, OPTIONAL :: index1
++ CHARACTER(*), OPTIONAL :: name2
++ INTEGER, OPTIONAL :: index2
++ CHARACTER(*), OPTIONAL :: name3
++ INTEGER, OPTIONAL :: index3
++ CHARACTER(*), OPTIONAL :: name4
++ INTEGER, OPTIONAL :: index4
++ CHARACTER(*), OPTIONAL :: name5
++ INTEGER, OPTIONAL :: index5
++ CHARACTER(*), OPTIONAL :: name6
++ INTEGER, OPTIONAL :: index6
++ CHARACTER(*), OPTIONAL :: name7
++ INTEGER, OPTIONAL :: index7
++ CHARACTER(*), OPTIONAL :: name8
++ INTEGER, OPTIONAL :: index8
++ CHARACTER(*), OPTIONAL :: name9
++ INTEGER, OPTIONAL :: index9
++ CHARACTER(*), OPTIONAL :: name10
++ INTEGER, OPTIONAL :: index10
++ CHARACTER(*), OPTIONAL :: name11
++ INTEGER, OPTIONAL :: index11
++ CHARACTER(*), OPTIONAL :: name12
++ INTEGER, OPTIONAL :: index12
++ CHARACTER(*), OPTIONAL :: name13
++ INTEGER, OPTIONAL :: index13
++ CHARACTER(*), OPTIONAL :: name14
++ INTEGER, OPTIONAL :: index14
++ CHARACTER(*), OPTIONAL :: name15
++ INTEGER, OPTIONAL :: index15
++ CHARACTER(*), OPTIONAL :: name16
++ INTEGER, OPTIONAL :: index16
++ CHARACTER(*), OPTIONAL :: name17
++ INTEGER, OPTIONAL :: index17
++ CHARACTER(*), OPTIONAL :: name18
++ INTEGER, OPTIONAL :: index18
++ CHARACTER(*), OPTIONAL :: name19
++ INTEGER, OPTIONAL :: index19
++ CHARACTER(*), OPTIONAL :: name20
++
++ IF (.NOT. PRESENT(index1)) THEN
++ CALL cg_goto_f1(fn, B, ier, name1, 0)
++ RETURN
++ ELSE
++ PRINT '(I3)', index1
++ CALL cg_goto_f1(fn, B, ier, name1, index1)
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index2))) THEN
++ CALL cg_gorel_f1(fn, ier, name2, index2)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index3))) THEN
++ CALL cg_gorel_f1(fn, ier, name3, index3)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index4))) THEN
++ CALL cg_gorel_f1(fn, ier, name4, index4)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index5))) THEN
++ CALL cg_gorel_f1(fn, ier, name5, index5)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index6))) THEN
++ CALL cg_gorel_f1(fn, ier, name6, index6)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index7))) THEN
++ CALL cg_gorel_f1(fn, ier, name7, index7)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index8))) THEN
++ CALL cg_gorel_f1(fn, ier, name8, index8)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index9))) THEN
++ CALL cg_gorel_f1(fn, ier, name9, index9)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index10))) THEN
++ CALL cg_gorel_f1(fn, ier, name10, index10)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index11))) THEN
++ CALL cg_gorel_f1(fn, ier, name11, index11)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index12))) THEN
++ CALL cg_gorel_f1(fn, ier, name12, index12)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index13))) THEN
++ CALL cg_gorel_f1(fn, ier, name13, index13)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index14))) THEN
++ CALL cg_gorel_f1(fn, ier, name14, index14)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index15))) THEN
++ CALL cg_gorel_f1(fn, ier, name15, index15)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index16))) THEN
++ CALL cg_gorel_f1(fn, ier, name16, index16)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index17))) THEN
++ CALL cg_gorel_f1(fn, ier, name17, index17)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index18))) THEN
++ CALL cg_gorel_f1(fn, ier, name18, index18)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index19))) THEN
++ CALL cg_gorel_f1(fn, ier, name19, index19)
++ ELSE
++ RETURN
++ END IF
++ END SUBROUTINE
++
++ SUBROUTINE cg_gorel_f(fn, ier, &
++ name1, index1, &
++ name2, index2, &
++ name3, index3, &
++ name4, index4, &
++ name5, index5, &
++ name6, index6, &
++ name7, index7, &
++ name8, index8, &
++ name9, index9, &
++ name10, index10, &
++ name11, index11, &
++ name12, index12, &
++ name13, index13, &
++ name14, index14, &
++ name15, index15, &
++ name16, index16, &
++ name17, index17, &
++ name18, index18, &
++ name19, index19, &
++ name20)
++ IMPLICIT NONE
++ INTEGER :: fn
++ INTEGER, INTENT(OUT) :: ier
++ CHARACTER(*) :: name1
++ INTEGER, OPTIONAL :: index1
++ CHARACTER(*), OPTIONAL :: name2
++ INTEGER, OPTIONAL :: index2
++ CHARACTER(*), OPTIONAL :: name3
++ INTEGER, OPTIONAL :: index3
++ CHARACTER(*), OPTIONAL :: name4
++ INTEGER, OPTIONAL :: index4
++ CHARACTER(*), OPTIONAL :: name5
++ INTEGER, OPTIONAL :: index5
++ CHARACTER(*), OPTIONAL :: name6
++ INTEGER, OPTIONAL :: index6
++ CHARACTER(*), OPTIONAL :: name7
++ INTEGER, OPTIONAL :: index7
++ CHARACTER(*), OPTIONAL :: name8
++ INTEGER, OPTIONAL :: index8
++ CHARACTER(*), OPTIONAL :: name9
++ INTEGER, OPTIONAL :: index9
++ CHARACTER(*), OPTIONAL :: name10
++ INTEGER, OPTIONAL :: index10
++ CHARACTER(*), OPTIONAL :: name11
++ INTEGER, OPTIONAL :: index11
++ CHARACTER(*), OPTIONAL :: name12
++ INTEGER, OPTIONAL :: index12
++ CHARACTER(*), OPTIONAL :: name13
++ INTEGER, OPTIONAL :: index13
++ CHARACTER(*), OPTIONAL :: name14
++ INTEGER, OPTIONAL :: index14
++ CHARACTER(*), OPTIONAL :: name15
++ INTEGER, OPTIONAL :: index15
++ CHARACTER(*), OPTIONAL :: name16
++ INTEGER, OPTIONAL :: index16
++ CHARACTER(*), OPTIONAL :: name17
++ INTEGER, OPTIONAL :: index17
++ CHARACTER(*), OPTIONAL :: name18
++ INTEGER, OPTIONAL :: index18
++ CHARACTER(*), OPTIONAL :: name19
++ INTEGER, OPTIONAL :: index19
++ CHARACTER(*), OPTIONAL :: name20
++
++ IF (.NOT. PRESENT(index1)) THEN
++ CALL cg_gorel_f1(fn, ier, name1, 0)
++ RETURN
++ ELSE
++ CALL cg_gorel_f1(fn, ier, name1, index1)
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index2))) THEN
++ CALL cg_gorel_f1(fn, ier, name2, index2)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index3))) THEN
++ CALL cg_gorel_f1(fn, ier, name3, index3)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index4))) THEN
++ CALL cg_gorel_f1(fn, ier, name4, index4)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index5))) THEN
++ CALL cg_gorel_f1(fn, ier, name5, index5)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index6))) THEN
++ CALL cg_gorel_f1(fn, ier, name6, index6)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index7))) THEN
++ CALL cg_gorel_f1(fn, ier, name7, index7)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index8))) THEN
++ CALL cg_gorel_f1(fn, ier, name8, index8)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index9))) THEN
++ CALL cg_gorel_f1(fn, ier, name9, index9)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index10))) THEN
++ CALL cg_gorel_f1(fn, ier, name10, index10)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index11))) THEN
++ CALL cg_gorel_f1(fn, ier, name11, index11)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index12))) THEN
++ CALL cg_gorel_f1(fn, ier, name12, index12)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index13))) THEN
++ CALL cg_gorel_f1(fn, ier, name13, index13)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index14))) THEN
++ CALL cg_gorel_f1(fn, ier, name14, index14)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index15))) THEN
++ CALL cg_gorel_f1(fn, ier, name15, index15)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index16))) THEN
++ CALL cg_gorel_f1(fn, ier, name16, index16)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index17))) THEN
++ CALL cg_gorel_f1(fn, ier, name17, index17)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index18))) THEN
++ CALL cg_gorel_f1(fn, ier, name18, index18)
++ ELSE
++ RETURN
++ END IF
++ IF ((ier .EQ. 0) .AND. (PRESENT(index19))) THEN
++ CALL cg_gorel_f1(fn, ier, name19, index19)
++ ELSE
++ RETURN
++ END IF
++ END SUBROUTINE
++
+ FUNCTION cg_get_type_c_int(a)
+ USE ISO_C_BINDING
+ INTEGER(C_INT) :: a
diff -Nru libcgns-3.3.0/debian/patches/series libcgns-3.3.0/debian/patches/series
--- libcgns-3.3.0/debian/patches/series 2018-03-06 21:21:47.000000000 +0100
+++ libcgns-3.3.0/debian/patches/series 2019-11-16 10:17:11.000000000 +0100
@@ -3,3 +3,4 @@
fix-p3dfout.patch
no-rpath.patch
no-matherr.patch
+gcc-pr92361.patch
--- End Message ---