Force pushed releases/gcc-15-a68

Jose E. Marchesi jemarch@gnu.org
Thu Oct 30 08:35:51 GMT 2025


Thank you.

> I rebased the branch on top of releases/gcc-15 and force pushed to the
> forge. I also added the patch below because there were some changes in
> the diagnostics code between GCC 15 and trunk that broke the build.
>
> pietro
>
> From: Pietro Monteiro <pietro@sociotechnical.xyz>
> Date: Wed, 29 Oct 2025 21:44:30 -0400
> Subject: [PATCH] a68: (gcc-15) Fix diagnostics
>
> Diagnostics code got moved to its own namespace and diagnostic_t was
> changed to an enum. Fix the code to work on GCC 15.
>
> gcc/ChangeLog:
>
> 	* algol68/a68-diagnostics.cc (diagnostic): Use diagnostic_info
> 	and diagnostic_t instead of diagnostics::diagnostic_info and
> 	enum diagnostics::kind, respectively.
>
> Signed-off-by: Pietro Monteiro <pietro@sociotechnical.xyz>
> ---
>  gcc/algol68/a68-diagnostics.cc | 14 +++++++-------
>  1 file changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/gcc/algol68/a68-diagnostics.cc b/gcc/algol68/a68-diagnostics.cc
> index 08e6905e5ed..d052fdf05dc 100644
> --- a/gcc/algol68/a68-diagnostics.cc
> +++ b/gcc/algol68/a68-diagnostics.cc
> @@ -275,23 +275,23 @@ diagnostic (int sev, int opt,
>  
>    /* Prepare rich location and diagnostics.  */
>    rich_location rich_loc (line_table, loc);
> -  diagnostics::diagnostic_info diagnostic;
> -  enum diagnostics::kind kind;
> +  diagnostic_info diagnostic;
> +  diagnostic_t kind;
>  
>    switch (sev)
>      {
>      case A68_FATAL:
> -      kind = diagnostics::kind::fatal;
> +      kind = DK_FATAL;
>        break;
>      case A68_INFORM:
> -      kind = diagnostics::kind::note;
> +      kind = DK_NOTE;
>        break;
>      case A68_WARNING:
> -      kind = diagnostics::kind::warning;
> +      kind = DK_WARNING;
>        break;
>      case A68_SCAN_ERROR:
>      case A68_ERROR:
> -      kind = diagnostics::kind::error;
> +      kind = DK_ERROR;
>        break;
>      default:
>        gcc_unreachable ();
> @@ -301,7 +301,7 @@ diagnostic (int sev, int opt,
>  		       &argp,
>  		       &rich_loc, kind);
>    if (opt != 0)
> -    diagnostic.m_option_id = opt;
> +    diagnostic.option_id = opt;
>    diagnostic_report_diagnostic (global_dc, &diagnostic);
>  
>    if (sev == A68_SCAN_ERROR)


More information about the Algol68 mailing list