When I am compiling the following program with clang++ version 5.0, it is resulting in
error: initializer on function does not look like a pure-specifier
extern void print(void *ptr);
#define NULL __null
class IInterface
{
public:
    virtual void method1() = NULL;
};
int main()
{
    void *ptr = NULL;
    print(ptr);
    return 0;
}
It seems __null is not supported by clang? But some posts in stackoverflow suggests clang supports __null. If so why am I getting this error. Could somebody suggest whats going on here?
 
     
     
    