threads / patch / 8029

patchwcwidth redeclaration

Subject: [PATCH] wcwidth redeclaration

## tl;dr

4 messages between May 8, 2007 and May 8, 2007. Diffs are folded; open one to read it.

replies: 3people: 3as markdown or json

Amos Waterland· May 8, 2007, 04:46 UTC · lore
Build fails for git 1.5.1.3 on AIX, with the message: 

utf8.c:66: error: conflicting types for 'wcwidth' /.../lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.3/include/string.h:266: error: previous declaration of 'wcwidth' was here

Here is a patch that fixes it for me. If there is a different way that is preferred, please let me know.

Signed-off-by: Amos Waterland <apw@us.ibm.com>
---
 utf8.c |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- utf8.c.orig Tue May 8 00:40:18 2007 +++ utf8.c Tue May 8 00:45:00 2007

Show changes to diff +2 −2
@@ -62,7 +62,7 @@
  * in ISO 10646.
  */
 
-static int wcwidth(ucs_char_t ch)
+static int git_wcwidth(ucs_char_t ch)
 {
 	/*
 	 * Sorted list of non-overlapping intervals of non-spacing characters,
@@ -207,7 +207,7 @@
 		return 0;
 	}
 
-	return wcwidth(ch);
+	return git_wcwidth(ch);
 }
 
 int is_utf8(const char *text)
Junio C Hamano· May 8, 2007, 05:02 UTC · re: Amos Waterland · lore

Re: [PATCH] wcwidth redeclaration

apw@us.ibm.com (Amos Waterland) writes:
Show 7 quoted lines
> Build fails for git 1.5.1.3 on AIX, with the message: 
>
> utf8.c:66: error: conflicting types for 'wcwidth'
> /.../lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.3/include/string.h:266: error: previous declaration of 'wcwidth' was here
>
> Here is a patch that fixes it for me.  If there is a different way that
> is preferred, please let me know.

It's static in that file, so renaming our version to our own name as you did is perfectly good.

Thanks for helping, as not many people seem to be on AIX on this list.

Johannes Schindelin· May 8, 2007, 10:03 UTC · re: Junio C Hamano · lore

Re: [PATCH] wcwidth redeclaration

Hi,
On Mon, 7 May 2007, Junio C Hamano wrote:
Show 15 quoted lines
> apw@us.ibm.com (Amos Waterland) writes:
> 
> > Build fails for git 1.5.1.3 on AIX, with the message: 
> >
> > utf8.c:66: error: conflicting types for 'wcwidth'
> > /.../lib/gcc/powerpc-ibm-aix5.3.0.0/4.0.3/include/string.h:266: error: previous declaration of 'wcwidth' was here
> >
> > Here is a patch that fixes it for me.  If there is a different way that
> > is preferred, please let me know.
> 
> It's static in that file, so renaming our version to our own
> name as you did is perfectly good.
> 
> Thanks for helping, as not many people seem to be on AIX on this
> list.

Thanks indeed. I thought that a static function could shadow a global function, but probably not with a different signature. Just out of curiosity: what is the signature of wcwidth in your string.h?

Ciao, Dscho

Amos Waterland· May 8, 2007, 17:18 UTC · re: Johannes Schindelin · lore

Re: [PATCH] wcwidth redeclaration

On Tue, May 08, 2007 at 12:03:47PM +0200, Johannes Schindelin wrote:
> Thanks indeed. I thought that a static function could shadow a global 
> function, but probably not with a different signature. Just out of 
> curiosity: what is the signature of wcwidth in your string.h?
This is it:
        extern int      wcwidth(wchar_t);

← back to recent threads