I applied this obvious patch to get the ada frontend building. Richard
Index: gcc/ada/gcc-interface/decl.c =================================================================== --- gcc/ada/gcc-interface/decl.c (revision 204174) +++ gcc/ada/gcc-interface/decl.c (working copy) @@ -1658,7 +1658,7 @@ TYPE_PRECISION (gnu_type) = esize; TYPE_UNSIGNED (gnu_type) = is_unsigned; set_min_and_max_values_for_integral_type (gnu_type, esize, - is_unsigned); + TYPE_SIGN (gnu_type)); process_attributes (&gnu_type, &attr_list, true, gnat_entity); layout_type (gnu_type); @@ -7492,11 +7492,9 @@ if (TREE_CODE (TREE_OPERAND (gnu_size, 1)) == INTEGER_CST) { tree op1 = TREE_OPERAND (gnu_size, 1); - wide_int signed_op1 - = wide_int::from_tree (op1).sforce_to_size (TYPE_PRECISION (sizetype)); - if (signed_op1.neg_p ()) + if (wi::neg_p (op1)) { - op1 = wide_int_to_tree (sizetype, -signed_op1); + op1 = wide_int_to_tree (sizetype, wi::neg (op1)); pre_op1 = annotate_value (build1 (NEGATE_EXPR, sizetype, op1)); } }