[Prev][Index]

bug



What's wrong with the following program ?  The compiler generates:

Error on line 35 of ttt.pc:  error in the -> expression; either right-hand-side is not a member or left-hand-side of -> is incorrect
Error in pc++ while executing:
------->  /u/sage/project/sage/bin/sun4/pC++2dep -w  TEMP_pC++.C
*** Error code 1


#include "pcxx.h"

const int num_of_segments = 4; 

class Segment {
 public:
  Segment();
};

Segment::Segment() {}

#include "kernel.h"

Collection ParticleList : public SuperKernel
{
 public:
  ParticleList(Distribution *D, Align *A);
 MethodOfElement:
  void initOrder() {};
}

ParticleList::ParticleList(Distribution *D, Align *A):SuperKernel(D,A){};

void Processor_Main()
{
  int i;

  Processors P;

  Distribution Dist_PartList(num_of_segments, &P, BLOCK);
  Align Align_PartList(num_of_segments, "[ALIGN(G[i],T[i])]");
  ParticleList<Segment> part(&Dist_PartList, &Align_PartList);

  for(i = 0; i < num_of_segments; i++) {
    if(part.Is_Local(i)) part(i)->initOrder();
    pcxx_Barrier();
  }
}


But in fact

part(i)->initOrder(); 

is a correct statement!