<feed xmlns='http://www.w3.org/2005/Atom'>
<title>llvm-project.git/flang/lib/Semantics/expression.cpp, branch users/koachan/spr/main.sparcias-enable-parseforallfeatures-in-matchoperandparserimpl</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/'/>
<entry>
<title>[flang] Add/fix some semantic checks for assumed-rank (#96194)</title>
<updated>2024-06-24T16:57:30+00:00</updated>
<author>
<name>Peter Klausler</name>
<email>35819229+klausler@users.noreply.github.com</email>
</author>
<published>2024-06-24T16:57:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=9ab292d72651c6dda098a653320f7fbb3624b778'/>
<id>9ab292d72651c6dda098a653320f7fbb3624b778</id>
<content type='text'>
Catch some cases where assumed rank dummy arguments are not allowed.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Catch some cases where assumed rank dummy arguments are not allowed.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Pass unmodified std::vector as const reference (#95050)</title>
<updated>2024-06-12T00:15:42+00:00</updated>
<author>
<name>Peter Klausler</name>
<email>35819229+klausler@users.noreply.github.com</email>
</author>
<published>2024-06-12T00:15:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=1fbf7486a5c187f0283174bbf92ee25519786ed3'/>
<id>1fbf7486a5c187f0283174bbf92ee25519786ed3</id>
<content type='text'>
cppcheck recommends that a std::vector argument be passed as a const
reference rather than by value.

Fixes https://github.com/llvm/llvm-project/issues/94929.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
cppcheck recommends that a std::vector argument be passed as a const
reference rather than by value.

Fixes https://github.com/llvm/llvm-project/issues/94929.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Adjust %REF/%VAL semantic checking (#93718)</title>
<updated>2024-06-03T20:35:50+00:00</updated>
<author>
<name>Peter Klausler</name>
<email>35819229+klausler@users.noreply.github.com</email>
</author>
<published>2024-06-03T20:35:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=930c2d911102a264df953024c6ebab48219dcc02'/>
<id>930c2d911102a264df953024c6ebab48219dcc02</id>
<content type='text'>
In accordance with other compilers, don't require that a %REF() actual
argument be a modifiable variable. And move the %REF/%VAL semantic
checks to Semantics/check-call.cpp, where one would expect to find them.

Fixes https://github.com/llvm/llvm-project/issues/93489.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In accordance with other compilers, don't require that a %REF() actual
argument be a modifiable variable. And move the %REF/%VAL semantic
checks to Semantics/check-call.cpp, where one would expect to find them.

Fixes https://github.com/llvm/llvm-project/issues/93489.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Better error message for RANK(NULL()) (#93577)</title>
<updated>2024-06-03T19:58:39+00:00</updated>
<author>
<name>Peter Klausler</name>
<email>35819229+klausler@users.noreply.github.com</email>
</author>
<published>2024-06-03T19:58:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=c7593344f48e64af29fd9512852f24f9ebe5a4c6'/>
<id>c7593344f48e64af29fd9512852f24f9ebe5a4c6</id>
<content type='text'>
We currently complain that the argument may not be a procedure, which is
confusing. Distinguish the NULL() case from other error cases (which are
indeed procedures). And clean up the utility predicates used for these
tests -- the current IsProcedure() is really just a test for a procedure
designator.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We currently complain that the argument may not be a procedure, which is
confusing. Distinguish the NULL() case from other error cases (which are
indeed procedures). And clean up the utility predicates used for these
tests -- the current IsProcedure() is really just a test for a procedure
designator.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Fix type of array constructor triplet (extension) (#92970)</title>
<updated>2024-05-23T23:09:45+00:00</updated>
<author>
<name>Peter Klausler</name>
<email>35819229+klausler@users.noreply.github.com</email>
</author>
<published>2024-05-23T23:09:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=47b485c052d3ced9d846cf0e9b6a1a7d450f6dee'/>
<id>47b485c052d3ced9d846cf0e9b6a1a7d450f6dee</id>
<content type='text'>
The type of "[lo:hi:str]" is being forced to INTEGER(8), ignoring the
types of the operands to the triplet. The type of a triplet should be
whatever the type of "lo+hi+str" would be.

(Array constructor triplets are a syntactic sugar extension for an
implied DO loop.)</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The type of "[lo:hi:str]" is being forced to INTEGER(8), ignoring the
types of the operands to the triplet. The type of a triplet should be
whatever the type of "lo+hi+str" would be.

(Array constructor triplets are a syntactic sugar extension for an
implied DO loop.)</pre>
</div>
</content>
</entry>
<entry>
<title>[flang][cuda] Extends matching distance computation (#91810)</title>
<updated>2024-05-13T15:34:36+00:00</updated>
<author>
<name>Valentin Clement (バレンタイン クレメン)</name>
<email>clementval@gmail.com</email>
</author>
<published>2024-05-13T15:34:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=e8eb52d167eb2bf972b3cfa67ff1028b86cd209d'/>
<id>e8eb52d167eb2bf972b3cfa67ff1028b86cd209d</id>
<content type='text'>
Extends the computation of the matching distance in the generic
resolution to support options described in the table:
https://docs.nvidia.com/hpc-sdk/archive/24.3/compilers/cuda-fortran-prog-guide/index.html#cfref-var-attr-unified-data

Options are added as language features in the `SemanticsContext` and a
flag is added in bbc for testing purpose.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Extends the computation of the matching distance in the generic
resolution to support options described in the table:
https://docs.nvidia.com/hpc-sdk/archive/24.3/compilers/cuda-fortran-prog-guide/index.html#cfref-var-attr-unified-data

Options are added as language features in the `SemanticsContext` and a
flag is added in bbc for testing purpose.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Don't crash in expression analysis after detecting error (#91234)</title>
<updated>2024-05-09T17:43:25+00:00</updated>
<author>
<name>Peter Klausler</name>
<email>35819229+klausler@users.noreply.github.com</email>
</author>
<published>2024-05-09T17:43:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=7b25ddc559fad078b605c7b3c0d9f4a35a973a52'/>
<id>7b25ddc559fad078b605c7b3c0d9f4a35a973a52</id>
<content type='text'>
Avoid calling GetArguments() if a fatal error has been detected.

Fixes https://github.com/llvm/llvm-project/issues/91114.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Avoid calling GetArguments() if a fatal error has been detected.

Fixes https://github.com/llvm/llvm-project/issues/91114.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Don't crash on bad inherited implied DO type (#91073)</title>
<updated>2024-05-09T17:17:15+00:00</updated>
<author>
<name>Peter Klausler</name>
<email>35819229+klausler@users.noreply.github.com</email>
</author>
<published>2024-05-09T17:17:15+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=22c59e01cd2f87164301415c93b60fc3c204dfb8'/>
<id>22c59e01cd2f87164301415c93b60fc3c204dfb8</id>
<content type='text'>
Fortran has an ambiguously defined rule about the typing of index
variables of implied DO loops in DATA statements and array constructors
that omit an explicit type specification. Such indices have the type
that they would have "if they were variables" in the innermost enclosing
scope. Although this could, and perhaps should, be read to mean that
implicit typing rules active in that innermost enclosing scope should be
applied, every other Fortran compiler interprets that language to mean
that if there is a type declaration for that name that is visible from
the enclosing scope, it is applied, and it is an error if that type is
not integer.

Fixes https://github.com/llvm/llvm-project/issues/91053.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fortran has an ambiguously defined rule about the typing of index
variables of implied DO loops in DATA statements and array constructors
that omit an explicit type specification. Such indices have the type
that they would have "if they were variables" in the innermost enclosing
scope. Although this could, and perhaps should, be read to mean that
implicit typing rules active in that innermost enclosing scope should be
applied, every other Fortran compiler interprets that language to mean
that if there is a type declaration for that name that is visible from
the enclosing scope, it is applied, and it is an error if that type is
not integer.

Fixes https://github.com/llvm/llvm-project/issues/91053.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang][cuda] Compute matching distance in generic resolution (#90774)</title>
<updated>2024-05-02T16:07:04+00:00</updated>
<author>
<name>Valentin Clement (バレンタイン クレメン)</name>
<email>clementval@gmail.com</email>
</author>
<published>2024-05-02T16:07:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=a131525908a908baff4cd01140dae158a307dc9e'/>
<id>a131525908a908baff4cd01140dae158a307dc9e</id>
<content type='text'>
Implement the matching distance as described here:
https://docs.nvidia.com/hpc-sdk/archive/24.3/compilers/cuda-fortran-prog-guide/index.html#cfref-var-attr-unified-data

Generic resolved to the smallest distance.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Implement the matching distance as described here:
https://docs.nvidia.com/hpc-sdk/archive/24.3/compilers/cuda-fortran-prog-guide/index.html#cfref-var-attr-unified-data

Generic resolved to the smallest distance.</pre>
</div>
</content>
</entry>
<entry>
<title>[flang] Ensure all warning/portability messages are guarded by Should… (#90518)</title>
<updated>2024-05-01T21:33:14+00:00</updated>
<author>
<name>Peter Klausler</name>
<email>35819229+klausler@users.noreply.github.com</email>
</author>
<published>2024-05-01T21:33:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.belthelziquor.com/llvm-project.git/commit/?id=505f6da1961ab55c601d7239648c53ce863b5d70'/>
<id>505f6da1961ab55c601d7239648c53ce863b5d70</id>
<content type='text'>
…Warn()

Many warning messages were being emitted unconditionally. Ensure that
all warnings are conditional on a true result from a call to
common::LanguageFeatureControl::ShouldWarn() so that it is easy for a
driver to disable them all, or, in the future, to provide per-warning
control over them.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
…Warn()

Many warning messages were being emitted unconditionally. Ensure that
all warnings are conditional on a true result from a call to
common::LanguageFeatureControl::ShouldWarn() so that it is easy for a
driver to disable them all, or, in the future, to provide per-warning
control over them.</pre>
</div>
</content>
</entry>
</feed>
