https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86916

--- Comment #4 from Roger Mc Murtrie <rogermc at iinet dot net.au> ---
Simon Wright has determined the problem and notes that GNAT has 
failed to recognise the actual problem.
(https://groups.google.com/forum/#!topic/comp.lang.ada/MdywAlMPQms)

The problem is in the packages Morph.Mesh_Morph_Value_Pointers, 
Mesh_Morph_Weight_Pointers. 

You say 
   package Mesh_Morph_Value_Pointers is new Interfaces.C.Pointers 
     (Interfaces.C.unsigned, API_Morph_Value, API_Morph_Values_Array, 
      API_Morph_Value'(others => <>)); 
but 
   type API_Morph_Value is new Interfaces.C.unsigned; 
so others => <> isn't a legal expression for an API_Morph_Value; you 
should say 
      API_Morph_Value'(0)); 

There is still a bug, which ought to be fixed, but it's that GNAT has 
failed to recognise the actual problem and has got fatally confused.

Reply via email to