# Support for Flang effort

**URL:** <https://fortran-lang.discourse.group/t/support-for-flang-effort/5138>\
**Category:** Help\
**Created:** [February 6, 2023, 3:14pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138 "2023-02-06T15:14:53Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![everythingfunctional](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/everythingfunctional/32/176_2.png) [@everythingfunctional](https://fortran-lang.discourse.group/u/everythingfunctional)\
**Post date:** [February 6, 2023, 3:14pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/1 "2023-02-06T15:14:53Z")

</div>

I’m trying to push to get Flang easier to try out by default, but I could use some support convincing a few people. If you want to see this happen any time soon, please leave a comment here:

> **[Reviving rename flang-new to flang](https://discourse.llvm.org/t/reviving-rename-flang-new-to-flang/68130)**
>
> Hi all, I’d like to revive the effort to rename flang-new -flang-experimental-exec to just flang. For reference a patch in that direction was submitted previously here, and a brief prior discussion can be found here. My understanding is that...

---

<div class="post-metadata">

**Author:** ![FortranFan](https://avatars.discourse-cdn.com/v4/letter/f/96bed5/32.png) [@FortranFan](https://fortran-lang.discourse.group/u/FortranFan)\
**Post date:** [February 6, 2023, 4:44pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/2 "2023-02-06T16:44:02Z")

</div>

@everythingfunctional ,

Great effort, kudos.

It will be nice to read constructive and collaborative responses that get posted to your questions [**here**](https://discourse.llvm.org/t/reviving-rename-flang-new-to-flang/68130/10).

To be brutally honest, to my non-“PC”-eye, I see a crucial vendor and its reps adopting strong elements of [**passive-aggressive**](https://www.mayoclinic.org/healthy-lifestyle/adult-health/expert-answers/passive-aggressive-behavior/faq-20057901) behavior, all of the points from Mayo Clinic can be ticked as present, particularly the timing aspects and how long the effort is taking. It is a very bad look for Fortran generally as evidenced by a genuine question [**here**](https://discourse.llvm.org/t/reviving-rename-flang-new-to-flang/68130/12) that then gets flagged.

Something is seriously amiss and it is a matter of worry for Fortran.

---

<div class="post-metadata">

**Author:** ![rwmsu](https://avatars.discourse-cdn.com/v4/letter/r/48db29/32.png) [@rwmsu](https://fortran-lang.discourse.group/u/rwmsu)\
**Post date:** [February 6, 2023, 7:30pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/3 "2023-02-06T19:30:30Z")

</div>

A question for both @everythingfunctional and @FortranFan. Reading the thread linked by @everythingfunctional, I get the impression that release of a working version of Flang will be delayed until NON\_STANDARD features like openMP and openACC are completed. I’m basing this on the following quote by sscalpone

```auto
The first goal is in good shape for standard Fortran features. I don’t know if 
the OpenMP and OpenACC implementation have done the same. I expect 
that most Fortran codes will use one or the other. It is important to
 present the not-yet-implemented features in a good light.

```

I don’t think that the statement that using one or the other (of openMP or openACC) is true. With a working implementation of co-arrays they would be my last choice (at least on a large HPC system). Frankly, if I was running the Flang project, the following would be my approach.

1. Implement the features/capability define in the standard (and only those features (no DEC extensions) etc. Deliver a working compiler (as in generate an executable binary) in a manner (apt install, or some package manager etc) based on ONLY the standard features that users could evaluate.

2. ONLY after a standard conforming compiler has passed a sufficient number of tests do you add NON-STANDARD extensions (DEC, openMP etc)

I get the impression that the flang developers are trying for perfection and have forgotten that " perfection is the enemy of good enough"

So my question is : Is my interpretation of the priorities of the flang developers correct?

---

<div class="post-metadata">

**Author:** ![everythingfunctional](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/everythingfunctional/32/176_2.png) [@everythingfunctional](https://fortran-lang.discourse.group/u/everythingfunctional)\
**Post date:** [February 6, 2023, 9:10pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/4 "2023-02-06T21:10:52Z")

</div>

> [@FortranFan](#):
>
> Something is seriously amiss

I have thoughts, but I’m trying to be diplomatic.

> [@rwmsu](#):
>
> Is my interpretation of the priorities of the flang developers correct?

To a degree yes. The priority is, and has always been, to produce a compiler that existing code bases can use with success. Specifically (at least for the DOE, who have provided a significant amount of the funding for the project), the priority is for software targeting execution on super computers. That means legacy extensions, openMP and maybe some openACC. I agree that I’d rather use the modern features of the language rather than the extensions, but that’s not where a lot of existing code is. I’ll be pushing for finishing the modern features as soon as the current priorities are reasonably well implemented.

I will say, we are pushing to make progress and priorities more visible to the general public. That’s also why I’m making the push to get the default builds to have `flang` be easy to use, so the more general public can provide feedback. I’m hopefully more people will try it out and let us know what they think.

---

<div class="post-metadata">

**Author:** ![everythingfunctional](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/everythingfunctional/32/176_2.png) [@everythingfunctional](https://fortran-lang.discourse.group/u/everythingfunctional)\
**Post date:** [February 8, 2023, 6:10pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/5 "2023-02-08T18:10:37Z")

</div>

FYI, I have officially submitted this change. Crossing my fingers it can be accepted. 🤞

[https://reviews.llvm.org/D143592](https://reviews.llvm.org/D143592)

---

<div class="post-metadata">

**Author:** ![everythingfunctional](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/everythingfunctional/32/176_2.png) [@everythingfunctional](https://fortran-lang.discourse.group/u/everythingfunctional)\
**Post date:** [February 8, 2023, 7:45pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/7 "2023-02-08T19:45:48Z")

</div>

Yep, sorry for the mistake. I’ve corrected it.

---

<div class="post-metadata">

**Author:** ![everythingfunctional](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/everythingfunctional/32/176_2.png) [@everythingfunctional](https://fortran-lang.discourse.group/u/everythingfunctional)\
**Post date:** [February 8, 2023, 10:36pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/8 "2023-02-08T22:36:14Z")

</div>

Just to be clear, I need as many potential flang users as possible to please publicly voice their support for this. Without that I’m worried the few opposing voices (most of whom are developing a competing commercial product by the way) will be able to continue to deny/delay this change. So please, if you are at all interested in how this goes, let the flang and LLVM communities know your opinion.

---

<div class="post-metadata">

**Author:** ![Steve](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/steve/32/2541_2.png) [@Steve](https://fortran-lang.discourse.group/u/Steve)\
**Post date:** [February 8, 2023, 11:44pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/9 "2023-02-08T23:44:17Z")

</div>

Oh my!

The LLVM flang project is 100% open source. You can take it and build it. There are no restrictions beyond the Apache 2.0 license with LLVM modifications. There’s a driver. There’s a runtime library. There’s an active development community that has pushed 10 commits just today – about par for any given day.

There’s a public TODO list of what’s left to do. There’s a design review process to share what’s being implemented. Bugs are tracked in LLVM’s Github issues list. Code reviews happen in LLVM’s Phabricator. There’s LLVM’s discourse and a Slack channel. And an open phone call every week. The call info is published on a link from the [llvm.org](http://llvm.org) home page.

@rwmsu FWIW, NVIDIA’s contributions are 100% focused on implementing standard Fortran.

@FortranFan Thanks for the diagnosis. I’ll bring it up with Eliza 😉

---

<div class="post-metadata">

**Author:** ![certik](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/certik/32/4_2.png) [@certik](https://fortran-lang.discourse.group/u/certik)\
**Post date:** [February 9, 2023, 3:45am UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/10 "2023-02-09T03:45:31Z")

</div>

@Steve welcome to the Fortran forum! It’s been a long time we talked. Thanks for the information. If you want to collaborate, let me know, I am always interested!

---

<div class="post-metadata">

**Author:** ![Steve](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/steve/32/2541_2.png) [@Steve](https://fortran-lang.discourse.group/u/Steve)\
**Post date:** [February 9, 2023, 7:05am UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/11 "2023-02-09T07:05:00Z")

</div>

Yo! Hi @certik! LFortran is looking pretty sweet.

Have you thought about adopting the flang runtime? I think it has a pretty spiffy format parser.

---

<div class="post-metadata">

**Author:** ![certik](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/certik/32/4_2.png) [@certik](https://fortran-lang.discourse.group/u/certik)\
**Post date:** [February 9, 2023, 3:07pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/12 "2023-02-09T15:07:41Z")

</div>

Thanks @Steve, that’s timely! We don’t have a format parser yet, I was putting the job off, but now it’s time to do it. Let me have a look.

---

<div class="post-metadata">

**Author:** ![adenchfi](https://avatars.discourse-cdn.com/v4/letter/a/858c86/32.png) [@adenchfi](https://fortran-lang.discourse.group/u/adenchfi)\
**Post date:** [February 9, 2023, 7:53pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/13 "2023-02-09T19:53:23Z")

</div>

> FWIW, NVIDIA’s contributions are 100% focused on implementing standard Fortran.

On an unrelated note, I’m happy to hear about NVIDIA’s contributions. I’ve seen them post nvfortran is waiting for llvm-flang to be complete before nvfortran makes significant standard-adopting changes, but it wasn’t clear how actively they were a part of llvm-flang.

---

<div class="post-metadata">

**Author:** ![FortranFan](https://avatars.discourse-cdn.com/v4/letter/f/96bed5/32.png) [@FortranFan](https://fortran-lang.discourse.group/u/FortranFan)\
**Post date:** [February 9, 2023, 8:16pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/14 "2023-02-09T20:16:52Z")

</div>

> [@Steve](#):
>
> … @FortranFan Thanks for the diagnosis. I’ll bring it up with Eliza 😉

Thank you @Steve for all your efforts.

Please note if Eliza is anything like “Alexa” where I cohabitate, don’t even bother!!! - ain’t gonna listen - Alexa pays attention to and takes orders from everyone but me, especially the kids and the dog …

---

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [February 11, 2023, 9:38am UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/15 "2023-02-11T09:38:40Z")

</div>

> **[LLVM's Fortran Compiler "Flang" Makes Significant Progress But Not Yet...](https://www.phoronix.com/news/LLVM-Flang-Early-2023)**
>
> Being worked on actively by a number of stakeholders in recent years has been Flang as a Fortran language front-end to the LLVM compiler stack

> **[fosdem\_flang\_status\_update.pdf](https://fosdem.org/2023/schedule/event/llvmflang/attachments/slides/5721/export/events/attachments/llvmflang/slides/5721/fosdem_flang_status_update.pdf)**
>
> 504.20 KB

---

<div class="post-metadata">

**Author:** ![everythingfunctional](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/everythingfunctional/32/176_2.png) [@everythingfunctional](https://fortran-lang.discourse.group/u/everythingfunctional)\
**Post date:** [March 22, 2023, 10:54pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/16 "2023-03-22T22:54:34Z")

</div>

Hi All,

I’ve taken the next step in the contentious decision making process with this. Please take some time to go make your opinions heard in the official discussion: [[PROPOSAL] Rename `flang-new` to `flang` - LLVM Project - LLVM Discussion Forums](https://discourse.llvm.org/t/proposal-rename-flang-new-to-flang/69462?u=everythingfunctional)

---

<div class="post-metadata">

**Author:** ![FortranFan](https://avatars.discourse-cdn.com/v4/letter/f/96bed5/32.png) [@FortranFan](https://fortran-lang.discourse.group/u/FortranFan)\
**Post date:** [March 23, 2023, 12:46am UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/17 "2023-03-23T00:46:36Z")

</div>

> [@everythingfunctional](#):
>
> … Please take some time to go make your opinions …

Did, suggested **Ffrend** (pronounced /frend/) as the name instead!!!

---

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [March 23, 2023, 7:33am UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/18 "2023-03-23T07:33:05Z")

</div>

Intel was wise, naming its new compiler `ifx` to avoid any confusion with `ifort`. Good marketing.

Confusion causes a loss of energy and momentum.

---

<div class="post-metadata">

**Author:** ![everythingfunctional](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/everythingfunctional/32/176_2.png) [@everythingfunctional](https://fortran-lang.discourse.group/u/everythingfunctional)\
**Post date:** [March 23, 2023, 2:40pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/19 "2023-03-23T14:40:28Z")

</div>

There was always destined to be a `flang` to go alongside `clang`. It was just a question of which codebase would get the designation. The first attempt failed, but to the developers of that codebase old habits seem to die hard, and they continue to call it `flang`, despite the fact it is not `flang`.

---

<div class="post-metadata">

**Author:** ![FortranFan](https://avatars.discourse-cdn.com/v4/letter/f/96bed5/32.png) [@FortranFan](https://fortran-lang.discourse.group/u/FortranFan)\
**Post date:** [March 23, 2023, 4:09pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/20 "2023-03-23T16:09:55Z")

</div>

> [@vmagnin](#):
>
> Intel was wise, naming its new compiler `ifx` to avoid any confusion with `ifort`. Good marketing.
> 
> Confusion causes a loss of energy and momentum.

Attention @greenrongreen

The teams I work with are rather disappointed with Intel. Currently the users are all forced to use `-standard-semantics -warn:all -stand` with the Intel Fortran compilers of `ifs` and `ifort`.

Intel, while launching a new processor `ifs` - wanted it to behave quite like legacy `ifort` and thus not `standard-semantics` the default and not issue all the warnings and any remarks re: standard compliance, presumably to satisfy certain other customers.

So then, the teams I work with would have preferred if Intel had also supplied a driver **off-the-shelf** i.e., part of oneAPI named `IFS` or something along such lines conveying “Intel Fortran Standard” where “standard” implies strict conformance with ISO IEC standard for Fortran. That is, `IFS` by default will be the same as `IFX` with `-standard-semantics -warn:all -stand` options tacked on. Here. sorry the config file solution is unacceptable.

Anyways, hope Intel manages to retain oneAPI as “free” forever: these teams only use Intel Fortran now because there is no separate licensing requirement with $$ purchases; the minute Intel goes back to the license era with Parallel Studio, etc., these teams will further accelerate the migration away from Fortran.

---

<div class="post-metadata">

**Author:** ![vmagnin](https://yyz2.discourse-cdn.com/free1/user_avatar/fortran-lang.discourse.group/vmagnin/32/28_2.png) [@vmagnin](https://fortran-lang.discourse.group/u/vmagnin)\
**Post date:** [March 23, 2023, 4:31pm UTC](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138/21 "2023-03-23T16:31:42Z")

</div>

> [@everythingfunctional](#):
>
> It was just a question of which codebase would get the designation. The first attempt failed, but to the developers of that codebase old habits seem to die hard, and they continue to call it `flang`, despite the fact it is not `flang`.

There is also `f18`. Is it the old name of the new Flang? (I think as I remember having followed news about f18 in ~2018-2019) Or the name of a part of it, the [parser](https://flang.llvm.org/docs/Parsing.html)? We can still see f18 on the [homepage](https://flang.llvm.org/docs/) of the new Flang, also called LLVM flang, which is not the classic Flang (sorry for playing with confusion 😉).

[Next page](https://fortran-lang.discourse.group/t/support-for-flang-effort/5138.md?page=2)
