On Wed, Sep 30, 2015 at 11:01:14AM -0600, Jeff Law wrote: > On 09/30/2015 06:45 AM, Marek Polacek wrote: > >On Wed, Sep 30, 2015 at 02:41:36PM +0200, Bernd Schmidt wrote: > >>On 09/29/2015 11:49 PM, Jeff Law wrote: > >>> > >>>This code from builtins.c: > >>> > >>> /* If we don't need too much alignment, we'll have been guaranteed > >>> proper alignment by get_trampoline_type. */ > >>> if (TRAMPOLINE_ALIGNMENT <= STACK_BOUNDARY) > >>> return tramp; > >>> > >>> > >>>It's entirely conceivable that TRAMPOLINE_ALIGNMENT will be the same as > >>>STACK_BOUNDARY. And if they are, then -Wtautological-compare will > >>>complain bitterly. > >> > >>Eww. Can we fix the warning not to complain when the comparison involves > >>macros? > > > >It already has > > > > /* Don't warn for various macro expansions. */ > > if (from_macro_expansion_at (loc) > > || from_macro_expansion_at (EXPR_LOCATION (lhs)) > > || from_macro_expansion_at (EXPR_LOCATION (rhs))) > > return; > > > >and also > > > > /* We do not warn for constants because they are typical of macro > > expansions that test for features, sizeof, and similar. */ > > if (CONSTANT_CLASS_P (lhs) || CONSTANT_CLASS_P (rhs)) > > return; > > > >so why does it warn? :( > If you want to dive into it, be my guest :-0 Attached is a suitable .ii > file.
All right, let me take a look. Marek