Re: porting-to update request

2025-03-28 Thread NightStrike
On Tue, Mar 25, 2025 at 11:04 AM NightStrike  wrote:
>
> Between GCC 9 and 10, the following code now errors out:
>
> integer function fcn(x)
>   implicit none
>   integer, intent(in) :: x
>   fcn = x * '0100'X
> end function fcn
>
> Error: BOZ constant at (1) uses nonstandard postfix syntax [see
> '-fno-allow-invalid-boz']
> Compiler returned: 1
>
> First, the error message is wrong regarding the option to go see:
>
> gfortran: error: unrecognized command-line option
> '-fno-allow-invalid-boz'; did you mean '-fallow-invalid-boz'?
>
> Second, that option doesn't protect against the aforementioned case.
>
> Third, and the main point of this email I guess, is that the
> porting-to page should mention this:
> https://www.gnu.org/software/gcc/gcc-10/porting_to.html
>
> It talks about argument mismatches, but it doesn't talk about BOZ
> literals in expressions, which used to be (perhaps incorrectly)
> accepted.  There is no new command line option to accept this legacy
> code, so the webpage should be updated at a minimum.

Should I open a bugzilla PR about this?


Re: porting-to update request

2025-04-03 Thread NightStrike
On Fri, Mar 28, 2025 at 2:02 PM NightStrike  wrote:
>
> On Tue, Mar 25, 2025 at 11:04 AM NightStrike  wrote:
> >
> > Between GCC 9 and 10, the following code now errors out:
> >
> > integer function fcn(x)
> >   implicit none
> >   integer, intent(in) :: x
> >   fcn = x * '0100'X
> > end function fcn
> >
> > Error: BOZ constant at (1) uses nonstandard postfix syntax [see
> > '-fno-allow-invalid-boz']
> > Compiler returned: 1
> >
> > First, the error message is wrong regarding the option to go see:
> >
> > gfortran: error: unrecognized command-line option
> > '-fno-allow-invalid-boz'; did you mean '-fallow-invalid-boz'?
> >
> > Second, that option doesn't protect against the aforementioned case.
> >
> > Third, and the main point of this email I guess, is that the
> > porting-to page should mention this:
> > https://www.gnu.org/software/gcc/gcc-10/porting_to.html
> >
> > It talks about argument mismatches, but it doesn't talk about BOZ
> > literals in expressions, which used to be (perhaps incorrectly)
> > accepted.  There is no new command line option to accept this legacy
> > code, so the webpage should be updated at a minimum.
>
> Should I open a bugzilla PR about this?

Is this email list still active? :)


porting-to update request

2025-03-25 Thread NightStrike
Between GCC 9 and 10, the following code now errors out:

integer function fcn(x)
  implicit none
  integer, intent(in) :: x
  fcn = x * '0100'X
end function fcn

Error: BOZ constant at (1) uses nonstandard postfix syntax [see
'-fno-allow-invalid-boz']
Compiler returned: 1

First, the error message is wrong regarding the option to go see:

gfortran: error: unrecognized command-line option
'-fno-allow-invalid-boz'; did you mean '-fallow-invalid-boz'?

Second, that option doesn't protect against the aforementioned case.

Third, and the main point of this email I guess, is that the
porting-to page should mention this:
https://www.gnu.org/software/gcc/gcc-10/porting_to.html

It talks about argument mismatches, but it doesn't talk about BOZ
literals in expressions, which used to be (perhaps incorrectly)
accepted.  There is no new command line option to accept this legacy
code, so the webpage should be updated at a minimum.


testsuite under wine

2022-12-15 Thread NightStrike via Fortran
When I run the testsuite under wine, I'm getting a lot of ANSI escape
sequences.  We had fixed this long ago, but it seems to be back.  Any
idea what I should change in my configuration to have this not happen?
 This is for build=host=x86_64-pc-linux-gnu and
target=x86_64-w64-mingw32, with the testsuite running under wine64
v7.20.  Example output, where you can see the output in between the
escape sequences is correct:

FAIL: gfortran.dg/ISO_Fortran_binding_16.f90   -Os  output pattern test
Output was:
^[[?25lC^[[?25h^[[?25lF^[[?25h^[[?25lI^[[?25h^[[?25l_^[[?25h^[[?25ls^[[?25h^[[?25le^[[?25h^[[?25lt^[[?25h^[[?25lp^[[?25h^[[?25lo^[[?25h^[[?25li^[[?25h^[[?25ln^[[?25h
^[[?25lt^[[?25h^[[?25le^[[?25h^[[?25lr^[[?25h^[[?25l:^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25lR^[[?25h^[[?25le^[[?25h^[[?25ls^[[?25h^[[?25lu^[[?25h^[[?25ll^[[?25h^[[?25l
t^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25ls^[[?25h^[[?25lh^[[?25h^[[?25la^[[?25h^[[?25ll^[[?25h^[[?25ll^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25lb^[[?25h^[[?25le^[[?25h^[[?25
l^[[K^[[1C^[[?25h^[[?25lt^[[?25h^[[?25lh^[[?25h^[[?25le^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25la^[[?25h^[[?25ld^[[?25h^[[?25ld^[[?25h^[[?25lr^[[?25h^[[?25le^[[?25h^[[?2
5ls^[[?25h^[[?25ls^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25lo^[[?25h^[[?25lf^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25la^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25lC^[[?25h^[[?25l^[[K
^[[1C^[[?25h^[[?25ld^[[?25h^[[?25le^[[?25h^[[?25ls^[[?25h^[[?25lc^[[?25h^[[?25lr^[[?25h^[[?25li^[[?25h^[[?25lp^[[?25h^[[?25lt^[[?25h^[[?25lo^[[?25h^[[?25lr^[[?25h^[[
?25l^[[K^[[1C^[[?25h^[[?25lf^[[?25h^[[?25lo^[[?25h^[[?25lr^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25la^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25lF^[[?25h^[[?25lo^[[?25h^[[?25lr^
[[?25h^[[?25lt^[[?25h^[[?25lr^[[?25h^[[?25la^[[?25h^[[?25ln^[[?25h^[[?25l^[[K^[[1C^[[?25h^[[?25lp^[[?25h^[[?25lo^[[?25h^[[?25li^[[?25h^[[?25ln^[[?25h^[[?25lt^[[?25h^
[[?25le^[[?25h^[[?25lr^[[?25h^[[?25l.^[[?25h^M^M

Should match:
CFI_setpointer: Result shall be the address of a C descriptor for a
Fortran pointer.


Re: testsuite under wine

2022-12-16 Thread NightStrike via Fortran
On Fri, Dec 16, 2022 at 1:44 AM Thomas Koenig  wrote:
>
> On 16.12.22 03:20, NightStrike via Fortran wrote:
>
> > When I run the testsuite under wine, I'm getting a lot of ANSI escape
> > sequences.  We had fixed this long ago, but it seems to be back.  Any
> > idea what I should change in my configuration to have this not happen?
>
> This should probably be fixed properly in some *.exp file, but you can
> try setting the GCC_COLORS environment variable to an empty string
> before running the test.

That didn't help.  It looks like this is always escape 25h to start
the output and 25l to end it, which I think is turning the cursor on
and off (based on https://en.wikipedia.org/wiki/ANSI_escape_code).  I
apparently fixed this previously by building wine with
--without-curses
(https://www.mail-archive.com/gcc@gcc.gnu.org/msg86366.html), but that
option to wine was removed.  Is there a way to hack this on the Deja
side to ignore the escapes?  Or to tell it to run in a way that makes
wine not emit them?


Re: Adding a new thread model to GCC

2022-12-23 Thread NightStrike via Fortran
On Fri, Dec 23, 2022 at 7:00 PM Jonathan Yong via Gcc-patches
 wrote:
>
> On 12/22/22 12:28, i.nix...@autistici.org wrote:
> > On 2022-12-22 12:21, Jonathan Yong wrote:
> >
> > hello,
> >
> >> On 12/16/22 19:20, Eric Botcazou wrote:
>  The libgcc parts look reasonable to me, but I can't approve them.
>  Maybe Jonathan Yong can approve those parts as mingw-w64 target
>  maintainer, or maybe a libgcc approver can do so.
> >>>
> >>> OK.
> >>>
>  The libstdc++ parts are OK for trunk. IIUC they could go in
>  separately, they just wouldn't be very much use without the libgcc
>  changes.
> >>>
> >>> Sure thing.
> >>>
> >>
> >> Ping, need help to commit it?
> >
> > yes, it would be great if we can merge the path into gcc-13!
> >
> > I've tested it on gcc-12-branch and gcc-master for i686/x86_64 windows,
> > with msvcrt and ucrt runtime - works as it should!
> >
> > Eric ^^^
> >
> >
> >
> > best!
>
> Done, pushed to master branch. Thanks Eric.


I think this might have broken fortran.  I'm assuming because the
backtrace includes gthr.h, and I just did a git pull:

In file included from /tmp/rtmingw/mingw/include/windows.h:71,
 from ../libgcc/gthr-default.h:606,
 from ../../../libgfortran/../libgcc/gthr.h:148,
 from ../../../libgfortran/io/io.h:33,
 from ../../../libgfortran/runtime/error.c:27:
../../../libgfortran/io/io.h:298:24: error: expected identifier before
numeric constant
  298 | { CC_LIST, CC_FORTRAN, CC_NONE,
  |^~~


Re: Team Collaboration Considerations

2022-12-26 Thread NightStrike via Fortran
On Tue, Dec 13, 2022, 03:10 Janne Blomqvist via Fortran 
wrote:

> But in general, yes, I do think IRC is showing its age in an
> increasingly multi-device and mobile world.
>

Tools like irccloud help here. I guess that doesn't qualify as open source
though.

>


Re: Team Collaboration Considerations

2023-01-19 Thread NightStrike via Fortran
On Thu, Jan 19, 2023, 00:01 Benson Muite via Fortran 
wrote:

> The GCC workflows is quite different from other open source projects
> being primarily email based and not using a bug tracker.
>

There's a bug tracker. I think you mean there isn't a patch tracker (or at
least not a system where you submit patches to a thing vs emailing them to
a list and hoping someone replies).

>


Re: Team Collaboration Considerations

2023-01-19 Thread NightStrike via Fortran
On Thu, Jan 19, 2023 at 7:46 AM Toon Moene  wrote:
>
> On 1/19/23 13:28, NightStrike via Fortran wrote:
>
> > On Thu, Jan 19, 2023, 00:01 Benson Muite via Fortran 
> > wrote:
> >
> >> The GCC workflows is quite different from other open source projects
> >> being primarily email based and not using a bug tracker.
> >>
> >
> > There's a bug tracker. I think you mean there isn't a patch tracker (or at
> > least not a system where you submit patches to a thing vs emailing them to
> > a list and hoping someone replies).
> Well, you can put patches into Bugzilla ...

You can, and people naturally do this, and I think it's great, but
there's usually a response from someone saying "post that to the
mailing list instead".


Re: Team Collaboration Considerations

2023-01-19 Thread NightStrike via Fortran
On Thu, Jan 19, 2023, 13:33 Bernhard Reutner-Fischer 
wrote:

> On 19 January 2023 13:52:55 CET, NightStrike via Fortran <
> fortran@gcc.gnu.org> wrote:
>
> >You can, and people naturally do this, and I think it's great, but
> >there's usually a response from someone saying "post that to the
> >mailing list instead".
>
> The mailing list has a 20-30 year history with reasoning about what
> currently is in the tree. I do think it is valuable to reason about patches
> publically for others to see. And I'm aware that this might not be regarded
> fancy nowadays by everyone.
>
> But that does not mean that using other means to collaborate should not be
> used by some. Be it comp.lang.fortran, a webchat.oftc, or other means,
> that's all fine of course.
>
> patches currently are handled differently, but I don't think that is a
> problem isn't it.
> Just post final patches to the list as long as that is regarded the way to
> do final review and document approval.
>
> cheers,
>

The problem is that patch tracking is unsustainable. You could go the other
way and have a patch tracker automatically echo messages to the mailing
list.

>


Re: [patch, gfortran.dg] Adjust numerous tests so that they pass on line endings

2023-01-21 Thread NightStrike via Fortran
On Sat, Jan 21, 2023, 18:59 Jerry D via Fortran  wrote:

>
> Proposed ChangeLog entry using git gcc-commit-mklog:
>
> Author: Jerry DeLisle 
> Date:   Sat Jan 21 15:47:19 2023 -0800
>
>  Revise the line end tests to pass on certain windows test environments
>  which inject spurious /r characters. Adjust (\n|\r\n|\r) to (\r*\n+).
>

Just to be clear, all simulators inject the spurious r's. I replicated the
problem on Linux.


Re: ☠ Buildbot (Sourceware): gcc - failed configure (failure) (master)

2023-01-29 Thread NightStrike via Fortran
On Sun, Jan 29, 2023 at 2:37 PM Jerry D via Fortran  wrote:
>
> I had this show up today. I have no idea what this is about.
>
> Please advise.

I assume the buildbot thinks that
https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=8011fbba7baa46947341ca8069b5a327163a68d5
broke the build, but I fail to see how that commit results in the
error reported in the log.


Re: [patch, gfortran.dg] Allow test to pass on mingw

2023-02-14 Thread NightStrike via Fortran
On Fri, Jan 20, 2023 at 10:21 PM Jerry DeLisle via Fortran
 wrote:
>
> Hi all,
>
> Similar to a patch I committed a while ago for Cygwin, the attached
> patch allows it to pass on the mingw version of gfortran.
>
> It is trivial.
>
> Ok for trunk?
>
> Regards,
>
> Jerry

ping


Re: [PATCH][stage1] Remove conditionals around free()

2023-03-23 Thread NightStrike via Fortran
On Fri, Mar 3, 2023 at 10:14 PM Jerry D via Fortran  wrote:

> I am certainly not a C++ expert but it seems to me this all begs for
> automatic finalization where one would not have to invoke free at all.
> I suspect the gfortran frontend is not designed for such things.

+1 for RAII


static libgfortran linker warnings

2021-04-20 Thread NightStrike via Fortran
When linking with -static-libgfortran, I get warnings from ld of the form
"ld: warning: -z ignore ignored" and "ld: warning: -z record ignored". I
can't find those -z options documented anywhere.  Why is gfortran adding
them?


Re: static libgfortran linker warnings

2021-04-21 Thread NightStrike via Fortran
On Wed, Apr 21, 2021 at 4:59 AM Bernhard Reutner-Fischer
 wrote:
> On Wed, 21 Apr 2021 02:34:43 -0400
> NightStrike via Fortran  wrote:
>
> > When linking with -static-libgfortran, I get warnings from ld of the form
> > "ld: warning: -z ignore ignored" and "ld: warning: -z record ignored". I
> > can't find those -z options documented anywhere.  Why is gfortran adding
> > them?
>
> -z are options to ld.
> Which linker do you use, on which OS?

binutils 2.32 (stock build from source) on CentOS 7.

> If you use binutils, you can pass -Wl,--verbose to the compiler to
> instruct the linker to dump the linker script while linking. This should
> show where the -z comes from:
> gfortran foo.f90 -static-libgfortran -Wl,--verbose

I didn't do this per se, but I did gfortran -v, and saw that it was an
option to collect2.  I can try your method when the system is
available again tomorrow.


Re: static libgfortran linker warnings

2021-04-21 Thread NightStrike via Fortran
On Wed, Apr 21, 2021 at 6:06 AM Bernhard Reutner-Fischer
 wrote:
>
> On Wed, 21 Apr 2021 05:29:28 -0400
> NightStrike  wrote:
>
> > On Wed, Apr 21, 2021 at 4:59 AM Bernhard Reutner-Fischer
> >  wrote:
> > > On Wed, 21 Apr 2021 02:34:43 -0400
> > > NightStrike via Fortran  wrote:
> > >
> > > > When linking with -static-libgfortran, I get warnings from ld of the 
> > > > form
> > > > "ld: warning: -z ignore ignored" and "ld: warning: -z record ignored". I
> > > > can't find those -z options documented anywhere.  Why is gfortran adding
> > > > them?
> > >
> > > -z are options to ld.
> > > Which linker do you use, on which OS?
> >
> > binutils 2.32 (stock build from source) on CentOS 7.
> >
> > > If you use binutils, you can pass -Wl,--verbose to the compiler to
> > > instruct the linker to dump the linker script while linking. This should
> > > show where the -z comes from:
> > > gfortran foo.f90 -static-libgfortran -Wl,--verbose
> >
> > I didn't do this per se, but I did gfortran -v, and saw that it was an
> > option to collect2.  I can try your method when the system is
> > available again tomorrow.
>
> gcc/configure.ac suggests that -z ignore / -z record is the native
> solaris ld parlance for --as-needed / --no-as-needed
> See "AC_CACHE_CHECK(linker --as-needed support".
>
> No idea why your gcc build thought that the ignore/record tuple is the
> correct thing to use for as-needed/no-as-needed. Maybe check your
> config.log around the '--as-needed support' checks for clues.
>
> I wouldn't suggest to hand edit your libgfortran.spec to use
> *lib: %{static-libgfortran:--as-needed} -lquadmath 
> %{static-libgfortran:--no-as-needed} -lm %(libgcc) %(liborig)
> but i guess that would silence your linker warnings, too.
> HTH,

FWIW:

./ld: supported targets: elf64-x86-64 elf32-i386 elf32-iamcu
elf32-x86-64 pei-i386 pei-x86-64 elf64-l1om elf64-k1om elf64-little
elf64-big elf32-little elf32-big plugin srec symbolsrec verilog tekhex
binary ihex
./ld: supported emulations: elf_x86_64 elf32_x86_64 elf_i386 elf_iamcu
elf_l1om elf_k1om
./ld: emulation specific options:


Re: static libgfortran linker warnings

2021-04-21 Thread NightStrike via Fortran
On Wed, Apr 21, 2021 at 6:17 AM Tobias Burnus  wrote:
>
>
> >> On Wed, 21 Apr 2021 02:34:43 -0400
> >> NightStrike via Fortran  wrote:
> >>> When linking with -static-libgfortran, I get warnings from ld of the form
> >>> "ld: warning: -z ignore ignored" and "ld: warning: -z record ignored". I
> >>> can't find those -z options documented anywhere.  Why is gfortran adding
> >>> them?
> >> -z are options to ld.
>
> libgfortran/acinclude.m4 contains:
>
>  dnl Check whether -Wl,--as-needed resp. -Wl,-zignore is supported
>
> That's where -z could come from. – Could you check what is in the
> installed file libgfortran.spec? On my Linux, it has:
>
> %{static-libgfortran:--as-needed}
>
> If you have a '-z ignore' there, it would be interesting to understand
> why – and what 'libgfortran/config.log' shows.
>
> >> Which linker do you use, on which OS?
> > binutils 2.32 (stock build from source) on CentOS 7.
>
> Here: Ubuntu with binutils 2.34.

%rename lib liborig

*lib: %{static-libgfortran:-zignore} -lquadmath
%{static-libgfortran:-zrecord} -lm %(libgcc) %(liborig)

Clearly, I built it wrong.  I just would like to know how I did so.