The following member features are either unimplemented, unsupported, or not functioning correctly in the HC(S)08 compilers.
struct S1{};
struct S2 { int member; };
struct S3 : S1, S2 {};
int S3::*pmi = &S3::member;
--------------^--------------- ERROR
class X{
public :
int a;
};
int main(){
int X::* p0 = &X::a;
X obj;
obj.*p0 = -1;
--------^-----------------ERROR:Unrecognized member
}
int S::* a0[3]; a0[1] = &S::i ---------^-----------------Failed
int flag;
struct S {
static int val(void) { return flag; }
} s;
S* f01() { flag = 101; return &s; }
void main(){
int g;
g = f01()->val(); //evaluation failed
}
class X {
int var;
public:
X() : var(1) {}
int mem_func();
} x;
int X::mem_func(){
return var; //returned value should be 1
}
class X {
public:
int m;
X(int a) : m(a) {}
}
X obj = 2;
int a = obj.m; //should be 2 (but is not)
class A{
protected:
int i;
};
class B:public A{
friend int f(B* p){return p->i};
} ;
class A {
protected:
typedef int nested_type;
nested_type func_A(void);
};
Class B: public A{
nested_type func_B(void);
};
A::nested_type A::func_A(void) { return m; }
B:: nested_type B::func_B(void) { return m; }
^------------------------------------ERROR: Not allowed
class B {
protected:
int i;
};
class C : private B {
friend void f(void);
};
void f(void) { (void) &C::i;}
-------------------------^------ERROR: Member cannot be accessed
Base class member access modification is unimplemented in the following case:
class A{
public:
int z;
};
class B: public A{
public:
A::z;
---------^------------ERROR
};