On Thu, Apr 06, 2017 at 09:47:10AM +0200, Richard Biener wrote: > @@ -955,6 +960,7 @@ get_alias_set (tree t) > Just be pragmatic here and make sure the array and its element > type get the same alias set assigned. */ > else if (TREE_CODE (t) == ARRAY_TYPE > + && ! TYPE_TYPELESS_STORAGE (t) > && (!TYPE_NONALIASED_COMPONENT (t) > || TYPE_STRUCTURAL_EQUALITY_P (t))) > set = get_alias_set (TREE_TYPE (t)); > @@ -1094,6 +1100,15 @@ get_alias_set (tree t) > > TYPE_ALIAS_SET (t) = set; > > + if (TREE_CODE (t) == ARRAY_TYPE > + && TYPE_TYPELESS_STORAGE (t))
Shouldn't TYPE_TYPELESS_STORAGE apply even for non-array types? If somebody chooses to store anything in long long __attribute__((typeless_storage)), so be it. Or what kind of complications do you see for that? Jakub