typedef struct aaa *AAA;
typedef AAA BBB;
struct aaa { BBB val; };

AAA x(void) {
    return (AAA)0;
}