public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: "Marc Poulhiès" <poulhies@adacore.com>
To: Fernando Oleo Blanco <irvise_ml@irvise.xyz>
Cc: Arnaud Charlet <charlet@adacore.com>, gcc-patches@gcc.gnu.org
Subject: Re: [wwwdocs] Add Ada's GCC 14 changelog entry
Date: Mon, 26 Feb 2024 10:17:54 +0100	[thread overview]
Message-ID: <87jzmr8ti6.fsf@adacore.com> (raw)
In-Reply-To: <0fa6637b-1b62-4f3c-8a7b-55f05c8a6df5@irvise.xyz>


Fernando Oleo Blanco <irvise_ml@irvise.xyz> writes:

> Dear all,
>
> just like last year, I would like to commit the changes that took place
> over at GNAT for GCC v14. The patch is attached to the email. Hopefully
> it is good enough to just be added to master. If you see something wrong
> or if you would like to add anything to it, feel free :) Feedback is
> always welcomed.

Fernando,

Thank you for this work! I have a few comments, see below.

diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html
index 85ccc54d..e6c96c9f 100644
--- a/htdocs/gcc-14/changes.html
+++ b/htdocs/gcc-14/changes.html
@@ -171,7 +171,49 @@ a work-in-progress.</p>
 <!-- .................................................................. -->
 <h2 id="languages">New Languages and Language specific improvements</h2>

-<!-- <h3 id="ada">Ada</h3> -->
+<h3 id="ada">Ada</h3>
+
+<ul>
+  <li>Several new aspects and contracts have been implemented:

Maybe worth noting that these are implementation defined aspects.

+    <ul>
+      <li><code>Exceptional_Cases</code> may be specified for procedures and
+      functions with side effects; it can be used to list exceptions that might
+      be propagated by the subprogram with side effects in the context of its
+      precondition, and associate them with a specific postcondition. For more
+      information, refer to SPARK 2014 Reference Manual, section 6.1.9.</li>
+      <li><code>User_Aspect</code> takes an argument that is the name of an
+      aspect defined by a User_Aspect_Definition configuration pragma.</li>
+      <li><code>Local_Restrictions</code> is used to specify that a particular
+      subprogram does not violate one or more local restrictions, nor can it
+      call a subprogram that is not subject to the same requirements.</li>
+      <li><code>Side_Effects</code> is equivalent to <code>pragma
+      Side_Effecs</code>.</li>
+      <li><code>Always_Terminates</code> is a boolean equivalent to <code>pragma
+      Always_Terminates</code></li>
+      <li><code>Ghost_Predicate</code></li>

It looks like Ghost_Predicate is missing some text here.

It may be a good thing to link to the actual documentation for these
options. Thanks to some documention changes, we can now link to
an option directly. For example:

https://gcc.gnu.org/onlinedocs/gnat_rm/Implementation-Defined-Pragmas.html

You would need to point to the correct version (this one points to
current devel version).

+    </ul>
+  </li>
+  <li>The new attributes and contracts have been applied to the relevant parts
+    of the Ada library and more code has been proven to be correct.</li>
+  <li>Initial support for the
+  <a href="https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/"><code>CHERI</code></a>
+  architecture.</li>
+  <li>Support for the <code>LoongArch</code> architecture.</li>
+  <li>Hardening improvements:
+    <ul>
+      <li>Use of the new <code>-fharden*</code> options. Most
+      notably <code>-fharden-compares</code>,
+      <code>-fharden-conditional-branches</code> and
+      <code>-fharden-control-flow-redundancy</code>.</li>
+      <li>Custom bools with higher Hamming distance.</li>
+      <li>The <code>strub</code> attribute has been added for functions and

Same as above for doc links:

https://gcc.gnu.org/onlinedocs/gcc/Instrumentation-Options.html#index-fharden-compares

+      variables in order to automatically zero-out their stack upon use or
+      return.</li>
+    </ul>
+  </li>
+  <li>Further clean up and improvements to the GNAT code.</li>
+  <li>Support for vxWorks 7 Cert RTP has been removed.</li>
+</ul>

 <!-- <h3 id="c-family">C family</h3> -->

  reply	other threads:[~2024-02-26  9:28 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-02-25 20:48 Fernando Oleo Blanco
2024-02-26  9:17 ` Marc Poulhiès [this message]
2024-02-26 19:36   ` Fernando Oleo Blanco
2024-03-10 17:30     ` Fernando Oleo Blanco

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87jzmr8ti6.fsf@adacore.com \
    --to=poulhies@adacore.com \
    --cc=charlet@adacore.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=irvise_ml@irvise.xyz \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).