Frank Heckenbach wrote:
I found that this is (indirectly) due to build_range_type (tree.c) not setting
TREE_UNSIGNED (itype) = TREE_UNSIGNED (type);
Waldek, do you think this should be changed in the backend, or should we work around it in the frontend?
Logically `build_range_type' should set `TREE_UNSIGNED'. However, I suspect that some places in the compiler expect `build_range_type' to return signed type (like `build_index_2_type'). Still, I would change `build_range_type' and then fix places depending on old behaviour.