[R-pkg-devel] warning: type of ‘zhpevx_’ does not match original declaration [-Wlto-type-mismatch]

Pierre Lafaye de Micheaux |@|@ye @end|ng |rom un@w@edu@@u
Tue Jul 7 00:13:01 CEST 2020


Dear Ivan,

Thank you very much for your response.

I do not have more information than the one I gave in my previous email. (And on top of that, the computer I was using with Debian SID, a recent version of gfortran and the last version of R-devel, just broke.)

My problem is that the CRAN team won't accept to publish my package until this WARNING problem is solved. And because I am unable to observe the warning on my side (I could not with the desktop that just broke, and I still can't with my current laptop with Debian 10), I have no clue on how to suppress this warning.

Thank you in advance for any other advice.

Best regards,
Pierre
________________________________
From: Ivan Krylov <krylov.r00t using gmail.com>
Sent: Tuesday, 7 July 2020 06:11
To: Pierre Lafaye de Micheaux <lafaye using unsw.edu.au>
Cc: r-package-devel using r-project.org <r-package-devel using r-project.org>
Subject: Re: [R-pkg-devel] warning: type of �zhpevx_� does not match original declaration [-Wlto-type-mismatch]

On Fri, 3 Jul 2020 00:15:27 +0000
Pierre Lafaye de Micheaux <lafaye using unsw.edu.au> wrote:

>Found the following significant warnings:
>    myzhpevx.cpp:13:23: warning: type of _zhpevx__ does not match
> original declaration [-Wlto-type-mismatch]

I managed to reproduce the warning on R-devel r78607 built with
--enable-lto using gcc version 6.3.0 20170516 (Debian 6.3.0-18+deb9u1):

myzhpevx.cpp:13:16: warning: type of �zhpevx_� does not match original declaration [-Wlto-type-mismatch]
           void F77_NAME(zhpevx)(char *jobz, char *range, char *uplo,
                ^
zhpevx.f:232:7: note: type mismatch in parameter 20
       SUBROUTINE zhpevx( JOBZ, RANGE, UPLO, N, AP, VL, VU, IL, IU,
       ^
zhpevx.f:232:7: note: type �int� should match type �size_t�
/usr/lib/gcc/x86_64-linux-gnu/6/include/stddef.h:216:23: note: the incompatible type is defined here
 typedef __SIZE_TYPE__ size_t;
                       ^
zhpevx.f:232:7: note: �zhpevx� was previously declared here
       SUBROUTINE zhpevx( JOBZ, RANGE, UPLO, N, AP, VL, VU, IL, IU,
       ^

Do you have access to the notes produced by the compiler in addition
to the warnings? Do they spell the same difference?

If yes, the warning is likely to be safe to ignore. m4/R.m4 notes that,
while gfortran < 8 uses int instead of size_t for hidden size arguments,
it doesn't make a practical difference.

--
Best regards,
Ivan

	[[alternative HTML version deleted]]



More information about the R-package-devel mailing list