cvs commit: src/lib/libc/gen disklabel.c src/lib/libcr/gen disklabel.c src/sbin/disklabel disklabel.c src/usr.sbin/diskpart diskpart.c
    Joerg Sonnenberger 
    joerg at britannica.bec.de
       
    Thu Mar 17 07:51:52 PST 2005
    
    
  
On Fri, Mar 18, 2005 at 12:44:42AM +0900, YONETANI Tomokazu wrote:
> On Thu, Mar 17, 2005 at 03:26:42PM +0100, Joerg Sonnenberger wrote:
> > >   Constify all users of dktypenames to unbreak buildworld.
> > >   Reported-by: walt
> > 
> > I'm not sure why world broke through. That's strange.
> 
> I should've been more explicit about what I claimed to fix. gcc fails
> miserably if one tries to get a difference of two addresses whose target
> types are different and there's no implicit conversions available, so:
> 
>   const char **ccpp;
>   char **cpp;
>   int idx;
> 
>   idx = cpp - ccpp;	/* NG */
>   idx = *cpp - *ccpp;	/* OK, *cpp converted to (const char *) */
>   idx = *ccpp - *cpp;	/* NG, (const char *) to (char *) */
This is what I meant. I have to read the specs again, this feels strange.
But the conversions rules _are_ strange, so it might very well be OK.
Joerg
    
    
More information about the Commits
mailing list