http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55570



--- Comment #2 from Marek Polacek <mpolacek at gcc dot gnu.org> 2012-12-03 
10:07:22 UTC ---

That's because in 4.8/4.7 we introduced

c-family/c-common.c:check_user_alignment which contains:

  if (!INTEGRAL_TYPE_P (TREE_TYPE (align))

      || TREE_CODE (align) != INTEGER_CST)

    {

      error ("requested alignment is not an integer constant");

      return -1;

    }

but when we get undefined macro as a parameter, the TREE_CODE of align is

IDENTIFIER_NODE: 

(gdb) call debug_tree (align)

 <identifier_node 0x7ffff1aa9690 SOME_NOT_DEFINED_MACRO>

but we don't check for that.

Reply via email to