+2013-10-13 Vincent Celier <celier@adacore.com>
+
+ * gnat_ugn.texi: Minor editing.
+
+2013-10-13 Ed Schonberg <schonberg@adacore.com>
+
+ * sem_ch3.adb (Check_Abstract_Overriding): If a synchronized
+ operation implements an interface primitive, mark the operation
+ as referenced, to prevent usually spurious messages about unused
+ entities: such operations are called in dispatching select
+ statements that are not visible to the compiler.
+
2013-10-13 Eric Botcazou <ebotcazou@adacore.com>
* gcc-interface/decl.c (gnat_to_gnu_param): Remove obsolete comment.
@cindex @option{^-gnatyM^/MAX_LINE_LENGTH^} (@command{gnatstub})
(@var{n} is a non-negative integer). Set the maximum line length that is
allowed in a source file. The default is 79. The maximum value that can be
-body stub to @var{n}; the default is 79. The maximum value that can be
specified is 32767. Note that in the special case of configuration
pragma files, the maximum is always 32767 regardless of whether or
not this switch appears.
end if;
end if;
+ -- If the operation is a wrapper for a synchronized primitive, it
+ -- may be called indirectly through a dispatching select. We assume
+ -- that it will be referenced elsewhere indirectly, and suppress
+ -- warnings about an unused entity.
+
+ if Is_Primitive_Wrapper (Subp)
+ and then Present (Wrapped_Entity (Subp))
+ then
+ Set_Referenced (Wrapped_Entity (Subp));
+ end if;
+
Next_Elmt (Elmt);
end loop;
end Check_Abstract_Overriding;