/* PR rtl-optimization/45865 */ /* { dg-do compile } */ /* { dg-options "-O2 -fcompare-debug" } */ typedef union tree_node *tree; enum ix86_builtin_type { IX86_BT_LAST_VECT, IX86_BT_LAST_PTR }; extern const enum ix86_builtin_type ix86_builtin_type_ptr_base[]; extern tree build_qualified_type (tree, int); extern tree build_pointer_type (tree); tree ix86_get_builtin_type (enum ix86_builtin_type tcode, unsigned int index) { tree type, itype; int quals; if (tcode <= IX86_BT_LAST_PTR) quals = 0x0; else quals = 0x1; itype = ix86_get_builtin_type (ix86_builtin_type_ptr_base[index], index); if (quals != 0x0) itype = build_qualified_type (itype, quals); type = build_pointer_type (itype); return type; }