I thought C++ lines like
#define int long long
would be reported as error by C++ compiler, because I think since the directive #define is used for text replacing and we should not permit a keyword to be replaced to avoid chaos.
But I tested gcc will compile with no error. Is there any reason or goodness to keep this as acceptable?