Ticket #104 (accepted defect)

Opened 9 years ago

Last modified 3 years ago

xaif representation/unparsing of structure element access through an array yields wrong element

Reported by: Utke Owned by: utke
Priority: 3 Milestone:
Component: OpenADFortTK Keywords:
Cc:

Description (last modified by utke) (diff)

input code:

TYPED_X(I)%FIELD2 = X(I * 2)

is unparsed to:

TYPED_X(I)%FIELD1%v = X(I*2)%v

after activation apparently picking in the structure:

TYPE MYTYPE
SEQUENCE

type(active)
FIELD1 REAL(w2f8) FIELD2 END TYPE

always the first element (FIELD1) rather than the actual one

In the xaif for two separate accesses:

typed_x(i)%field1 and typed_x(i)%field2

are represented by:

<xaif:SymbolReference vertex_id="1" scope_id="4" symbol_id="scalarizedref0"/>

i.e. if the "0" is supposed to be a counter it doesn't count up.

Change History

Changed 8 years ago by Utke

Note: This is not a problem if there is just a single structure element and not an array

Changed 5 years ago by utke

  • status changed from Assigned to new
  • description modified (diff)

Changed 5 years ago by utke

  • owner changed from Fagan to utke
  • status changed from new to accepted

need to review

Changed 3 years ago by utke

underlying problem is the scalarized XAIF representation

Can be fixed only in the Rose variant.

Note: See TracTickets for help on using tickets.