* [PATCH] Include zshterm.h to silence a warning
2013-04-06 18:19 Function tgoto implicitly converted to pointer Nick Bryda
@ 2013-04-06 19:36 ` Frank Terbeck
2013-04-07 11:24 ` Function tgoto implicitly converted to pointer Axel Beckert
2013-04-07 17:24 ` Peter Stephenson
2 siblings, 0 replies; 6+ messages in thread
From: Frank Terbeck @ 2013-04-06 19:36 UTC (permalink / raw)
To: zsh-workers; +Cc: Nick Bryda
Nick Bryda <nickbryda@gmx.us> wrote:
> I'm getting a build error with 5.0.2 on Ubuntu 12.10. The error is
>
> Function `tgoto' implicitly converted to pointer at
> ../../../Src/Zle/zle_refresh.c:2361
[...]
> This is often due to a missing function prototype definition.
>
> Since use of implicitly converted pointers is always fatal to the
> application on ia64, they are errors. Please correct them for your
> next upload.
[...]
This looks like a missing header inclusion, that causes the missing
prototype. `tgoto()' should be defined in "term.h". For portability
reasons, zsh wraps that file into `Src/zshterm.h' - so include that.
---
The default zsh build doesn't trigger this warning, at least not with
gcc 4.7.2 on amd64.
I didn't see many explicit includes in module sources. So if there is
some magic going on, that I am not aware of, please tell me. If not,
if someone knowledgeable could ACK this, I'd push the change to the
central repository.
Src/Zle/zle_refresh.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/Src/Zle/zle_refresh.c b/Src/Zle/zle_refresh.c
index 17b78ce..15fbdf1 100644
--- a/Src/Zle/zle_refresh.c
+++ b/Src/Zle/zle_refresh.c
@@ -28,6 +28,7 @@
*/
#include "zle.mdh"
+#include "../zshterm.h"
#ifdef MULTIBYTE_SUPPORT
/*
--
1.8.2.rc1
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Function tgoto implicitly converted to pointer
2013-04-06 18:19 Function tgoto implicitly converted to pointer Nick Bryda
2013-04-06 19:36 ` [PATCH] Include zshterm.h to silence a warning Frank Terbeck
@ 2013-04-07 11:24 ` Axel Beckert
2013-04-07 17:40 ` Nick Bryda
2013-04-08 14:34 ` Clemens Huebner
2013-04-07 17:24 ` Peter Stephenson
2 siblings, 2 replies; 6+ messages in thread
From: Axel Beckert @ 2013-04-07 11:24 UTC (permalink / raw)
To: zsh-workers
Hi,
On Sat, Apr 06, 2013 at 02:19:48PM -0400, Nick Bryda wrote:
> I'm getting a build error with 5.0.2 on Ubuntu 12.10. The error is
>
> Function `tgoto' implicitly converted to pointer at
> ../../../Src/Zle/zle_refresh.c:2361
I only found this in the Debian build-logs for ia64[1]:
../../Src/prompt.c: In function 'set_colour_attribute':
../../Src/prompt.c:1936:3: warning: implicit declaration of function
'tgoto' [-Wimplicit-function-declaration]
[1] https://buildd.debian.org/status/fetch.php?pkg=zsh&arch=ia64&ver=5.0.2-2&stamp=1357759754
This looks slightly different than what you get. We used
gcc-4.6_4.6.3-8 for that build. The Ubuntu build used
gcc-4.7_4.7.2-2ubuntu1, so this maybe an issue which isn't triggered
with gcc 4.6.
But then again, those messages are also present in older versions,
namely 4.3.17, on basically all architectures:
https://buildd.debian.org/~brlink/packages/z/zsh.html (sorry, no
automated checks for the 5.0.2 experimental builds yet).
> Our automated build log filter
Is that blhc?
> detected the problem(s) above that will likely cause your package to
> segfault on architectures where the size of a pointer is greater
> than the size of an integer, such as ia64 and amd64.
Can't remember having any such issues on ia64 and especially not
amd64, except that one-liner segfault posted here a few weeks ago.
> More information can be found at:
> http://wiki.debian.org/ImplicitPointerConversions
This doesn't sound at all like a gcc 4.7 specific issue (as I
suspected initially) since this page hasn't been touched since 2009
and mentions stuff from 2007.
> The full build log is available here
> https://launchpadlibrarian.net/136382500/buildlog_ubuntu-quantal-amd64.zsh_5.0.2-0ubuntu1~ppaqq1_FAILEDTOBUILD.txt.gz
Can you give me a pointer to your source package (or the Diff to the
Debian package), too?
Kind regards, Axel
--
/~\ Plain Text Ribbon Campaign | Axel Beckert
\ / Say No to HTML in E-Mail and News | abe@deuxchevaux.org (Mail)
X See http://www.asciiribbon.org/ | abe@noone.org (Mail+Jabber)
/ \ I love long mails: http://email.is-not-s.ms/ | http://noone.org/abe/ (Web)
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Function tgoto implicitly converted to pointer
2013-04-07 11:24 ` Function tgoto implicitly converted to pointer Axel Beckert
@ 2013-04-07 17:40 ` Nick Bryda
2013-04-08 14:34 ` Clemens Huebner
1 sibling, 0 replies; 6+ messages in thread
From: Nick Bryda @ 2013-04-07 17:40 UTC (permalink / raw)
To: zsh-workers
[-- Attachment #1: Type: text/plain, Size: 2185 bytes --]
On Sunday, April 07, 2013 01:24:03 PM Axel Beckert wrote:
> Hi,
>
> On Sat, Apr 06, 2013 at 02:19:48PM -0400, Nick Bryda wrote:
> > I'm getting a build error with 5.0.2 on Ubuntu 12.10. The error is
> >
> > Function `tgoto' implicitly converted to pointer at
> > ../../../Src/Zle/zle_refresh.c:2361
>
> I only found this in the Debian build-logs for ia64[1]:
>
> ../../Src/prompt.c: In function 'set_colour_attribute':
> ../../Src/prompt.c:1936:3: warning: implicit declaration of function
> 'tgoto' [-Wimplicit-function-declaration]
>
> [1]
> https://buildd.debian.org/status/fetch.php?pkg=zsh&arch=ia64&ver=5.0.2-2&st
> amp=1357759754
>
> This looks slightly different than what you get. We used
> gcc-4.6_4.6.3-8 for that build. The Ubuntu build used
> gcc-4.7_4.7.2-2ubuntu1, so this maybe an issue which isn't triggered
> with gcc 4.6.
>
> But then again, those messages are also present in older versions,
> namely 4.3.17, on basically all architectures:
> https://buildd.debian.org/~brlink/packages/z/zsh.html (sorry, no
> automated checks for the 5.0.2 experimental builds yet).
>
> > Our automated build log filter
>
> Is that blhc?
>
> > detected the problem(s) above that will likely cause your package to
> > segfault on architectures where the size of a pointer is greater
> > than the size of an integer, such as ia64 and amd64.
>
> Can't remember having any such issues on ia64 and especially not
> amd64, except that one-liner segfault posted here a few weeks ago.
>
> > More information can be found at:
> > http://wiki.debian.org/ImplicitPointerConversions
>
> This doesn't sound at all like a gcc 4.7 specific issue (as I
> suspected initially) since this page hasn't been touched since 2009
> and mentions stuff from 2007.
>
> > The full build log is available here
> > https://launchpadlibrarian.net/136382500/buildlog_ubuntu-quantal-amd64.zsh
> > _5.0.2-0ubuntu1~ppaqq1_FAILEDTOBUILD.txt.gz
> Can you give me a pointer to your source package (or the Diff to the
> Debian package), too?
>
> Kind regards, Axel
Hi
This should have the diff and the source
https://launchpad.net/~futurepilot/+archive/ppa/+sourcepub/3087366/+listing-
archive-extra
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Function tgoto implicitly converted to pointer
2013-04-07 11:24 ` Function tgoto implicitly converted to pointer Axel Beckert
2013-04-07 17:40 ` Nick Bryda
@ 2013-04-08 14:34 ` Clemens Huebner
1 sibling, 0 replies; 6+ messages in thread
From: Clemens Huebner @ 2013-04-08 14:34 UTC (permalink / raw)
To: zsh-workers
On 04/07/13 13:24, Axel Beckert wrote:
>> detected the problem(s) above that will likely cause your package to
>> segfault on architectures where the size of a pointer is greater
>> than the size of an integer, such as ia64 and amd64.
>
> Can't remember having any such issues on ia64 and especially not
> amd64, except that one-liner segfault posted here a few weeks ago.
>
We had the issue (the one in ../../../Src/Zle/zle_refresh.c:2361
) in Solaris 64bit, and it definitely caused zsh to crash, when you
pressed Cursor right. This was fixed in
commit cbb8a3c762ba6034e5ae0c35e6d04c2de130f933
Author: Peter Stephenson <pws@users.sourceforge.net>
Date: Thu Jun 21 08:45:02 2012 +0000
30518: attempt to supply tgoto() prototype when missing only.
For Solaris 10 and earlier.
This works for Solaris in 5.0.2:
...
checking if tgoto prototype is missing... yes
...
The log here shows:
...
checking if tgoto prototype is missing... no
...
Seems like there is a prototype, but the prototype is broken.
Regards,
Clemens
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: Function tgoto implicitly converted to pointer
2013-04-06 18:19 Function tgoto implicitly converted to pointer Nick Bryda
2013-04-06 19:36 ` [PATCH] Include zshterm.h to silence a warning Frank Terbeck
2013-04-07 11:24 ` Function tgoto implicitly converted to pointer Axel Beckert
@ 2013-04-07 17:24 ` Peter Stephenson
2 siblings, 0 replies; 6+ messages in thread
From: Peter Stephenson @ 2013-04-07 17:24 UTC (permalink / raw)
To: zsh-workers
On Sat, 06 Apr 2013 14:19:48 -0400
Nick Bryda <nickbryda@gmx.us> wrote:
> Function `tgoto' implicitly converted to pointer at
> ../../../Src/Zle/zle_refresh.c:2361
>...
> This is often due to a missing function prototype definition.
It's highly likely in this case: getting the right headers for the
terminal libraries, particularly in a way that works on older systems,
is nasty.
In the worst case, TGOTO_PROTO_MISSING should be defined by a test in
configure.ac: evidently it isn't here, so I suppose the code around line
1652 of configure.ac isn't working for some reason. What should happen
is if the duff prototype on 1655 *does* compile, we know there *can't*
be a valid prototype already. It may be that it's failing to compile
for some other reason.
Axel is probably more help with the details.
pws
^ permalink raw reply [flat|nested] 6+ messages in thread