Hi Jakub,
On 2021/9/18 12:11 AM, Jakub Jelinek wrote:
@@ -3496,7 +3509,8 @@ static match
match_omp (gfc_exec_op op, const omp_mask mask)
{
gfc_omp_clauses *c;
- if (gfc_match_omp_clauses (&c, mask) != MATCH_YES)
+ if (gfc_match_omp_clauses (&c, mask, true, true, false,
+
Here, the problem is that the param.expr was:
&"abc" -> type: "char*"
as that's an ADDR_EXPR, the previous code dereferrenced it:
*&"abc" -> type *(char*)
but that's the type 'char'. Thus, at the end, the result
was
scalar = 'a' -> type char
instead of
scalar "abc" -> type char array of s
On Tue, Oct 19, 2021 at 09:03:06PM +0800, Chung-Lin Tang wrote:
> 2021-10-19 Chung-Lin Tang
>
> gcc/fortran/ChangeLog:
>
> * openmp.c (gfc_match_omp_clause_reduction): Add 'openmp_target' default
> false parameter. Add 'always,tofrom' map for OMP_LIST_IN_REDUCTION case.
> (gf
On 16.10.21 20:54, Jan Hubicka wrote:
I wrote:
Fortran has for a long time 'character(len=5), allocatable" or
"character(len=*)". In the first case, the "5" can be ignored as both
caller and callee know the length. In the second case, the length is
determined by the argument, but it cannot be ch
Endian fix – but not well tested on big endian - hence, reports
whether it now passes are highly welcome (thanks!).
Committed as r12-4528-gd4044db034b40c275b5f287d5854a102d22e07c0
Tobias
-
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634
München; Ges