Opened 20 months ago

#145 new defect

Subscript in tuple fails

Reported by: pabuhr Owned by:
Priority: minor Component: cfa-cc
Version: 1.0 Keywords:
Cc:

Description

int main() {
    int i, a[10];
    [i, a[3]] = 3;
}
warning: rvalue to reference conversion of rvalue: Address of:
  Application of
    Variable Expression: ?[?]: forall
      DT: sized object type
      function
    ... with parameters
      intrinsic pointer to instance of type DT (not function type)
      intrinsic signed long int
    ... returning
      _retval__operator_index: reference to instance of type DT (not function type)
      ... with attributes:
        Attribute with name: unused


  ... to arguments
    Variable Expression: a: array of signed int with dimension of Generated Cast of:
      constant expression (10 10: signed int)
    ... to:
      unsigned long int
    ... with environment:
      Types:
      Non-types:

    Generated Cast of:
      constant expression (3 3: signed int)
    ... to:
      signed long int

cfa-cpp: GenPoly/Lvalue.cc:391: Expression* GenPoly::{anonymous}::ReferenceConversions::postmutate(CastExpr*): Assertion `diff == 1' failed.
Stack back trace for: /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp
(0) /lib/x86_64-linux-gnu/libc.so.6 : (/*unknown*/)+0x2dc82 [0x7fbff5a6fc82]
(1) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdce154]
(2) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdce4d7]
(3) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xd55cfb]
(4) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdaaf02]
(5) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xd55f3b]
(6) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdb0ea9]
(7) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdb1300]
(8) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdb1b3c]
(9) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xd5649b]
(10) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdb0ea9]
(11) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdb1300]
(12) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdb0ea9]
(13) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdb1300]
(14) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp() [0xdb1469]
(15) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp : GenPoly::convertLvalue(std::__cxx11::list<Declaration*, std::allocator<Declaration*> >&)+0x457 [0xda7757]
(16) /u0/pabuhr/software/mary/cfa-cc/lib/cfa/cfa-cpp : main(/*unknown*/)+0xac1 [0x932701]
CC1 Translator error: stage 2, child failed 6

Change History (0)

Note: See TracTickets for help on using tickets.