Illegal attribute target for derived type component

I’m currently working with a code like this:

#if defined (__ibm__) || defined(__PGI)
#define TR15581 1
#endif

...

#ifdef TR15581
  TYPE in_buff_2d
    REAL, ALLOCATABLE, TARGET :: in_buff(:,:)
  END TYPE in_buff_2d
...
#else
  TYPE in_buff_2d
    REAL, POINTER :: in_buff(:,:)
  END TYPE in_buff_2d
...
#endif

that give me this error message at compile time:

Illegal attribute target for derived type component

Could anyone explain me what’s wrong?
Does TR 15581 allow derived type component with
the target attribute?

Thanks in advance.

Hi,

target can not be applied to components/members; it can only
be applied an entire object.

Hongyon