https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69866

Thomas Preud'homme <thopre01 at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2016-02-19 00:00:00         |2016-7-20
                 CC|                            |thopre01 at gcc dot gnu.org

--- Comment #5 from Thomas Preud'homme <thopre01 at gcc dot gnu.org> ---
I can indeed reproduce that bug with latest gcc-5-branch either by compiling
the below testcase, or by building ChibiOS 3.0.4 as described in
https://answers.launchpad.net/gcc-arm-embedded/+question/280242

Best regards.

(In reply to acrsofter from comment #3)
> reproduce steps:
> 
> [foo.c]
> 
> int _umh(int i)
> {
>   return i+1;
> }
> 
> int weaks(int i) __attribute__((weak, alias("_umh")));
> 
> int main()
> {
>  return weaks(10);
> }
> 
> 
> [bar.c]
> 
> int weaks(int i)
> {
>   return i+1;
> }
> 
> 
> now compile:
> 
> gcc -c bar.c
> 
> gcc -flto -c foo.c
> 
> gcc -flto -o elf bar.o foo.o
> 
> 
> note:
> 
> bar compiled without flt
> but rest with flt
> 
> 
> now at linking stage booms
> at line
> 
>  gcc_assert (c != SYMBOL_EXTERNAL
>       && (c == SYMBOL_DUPLICATE || !symbol_partitioned_p (node)));
> 
> in lto/lto-partition.c
> 
> ===============================================================
> 
> same code compiled without lto ok
> 
> gcc 4.9.3 not affected
> but 5.3.0 affected and latest (gcc-6-20160214) affected

Reply via email to