On Fri, 14 Jun 2019 at 03:35, Jeff Law <l...@redhat.com> wrote: > > On 6/13/19 1:10 PM, Martin Sebor wrote: > > Attached is a fix for the fold_build call with inconsistent > > argument types introduced in a recent commit of mine. > > > > Tested on x86_64-linux. > > > > Martin > > > > gcc-90662.diff > > > > PR tree-optimization/90662 - strlen of a string in a vla plus offset not > > folded > > > > gcc/ChangeLog: > > > > PR tree-optimization/90662 > > * tree-ssa-strlen.c (get_stridx): Convert fold_build2 operands > > to the same type. > > > > gcc/testsuite/ChangeLog: > > > > PR tree-optimization/90662 > > * gcc.dg/pr90866-2.c: New test. > > * gcc.dg/pr90866.c: Ditto. > OK > jeff
Hi, I've noticed that pr90866-2.c fails on arm-none-eabi: /gcc/testsuite/gcc.dg/pr90866-2.c:17:5: error: conflicting types for 'i' /gcc/testsuite/gcc.dg/pr90866-2.c:17:1: note: an argument type that has a default promotion cannot match an empty parameter name list declaration /gcc/testsuite/gcc.dg/pr90866-2.c:16:5: note: previous declaration of 'i' was here compiler exited with status 1 FAIL: gcc.dg/pr90866-2.c (test for excess errors) Removing 'int i();' makes the test pass, but I'm wondering why is passes on other targets without this change? Christophe