Inlining problems again
    Johannes Pfau 
    nospam at example.com
       
    Sat Apr  5 10:53:12 PDT 2014
    
    
  
Am Sun, 6 Apr 2014 02:51:28 +1000
schrieb "Daniel Murphy" <yebbliesnospam at gmail.com>:
> "Johannes Pfau"  wrote in message
> news:lhp8h4$2j38$1 at digitalmars.com...
> 
> > But we'd want this to work/inline nevertheless, right?:
> > ------------
> > void test(const(char)[] a)
> > {
> > }
> >
> > char[] abc;
> > test(abc);
> > ------------
> >
> > Then we still need to tell GCC that const(char)[] is a variant of
> > char[] or it won't inline.
> 
> Can you just strip all const/immutable/etc when the type is passed to
> the backend? 
> 
This would impact debug info which is also emitted by the backend. GCC
supports 'variants' of types which means only different qualifiers but
the same apart from type qualifiers. We just need to set the variant
information correctly (e.g. const(char)[] should be recognized as a
variant of char[])
    
    
More information about the D.gnu
mailing list