1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | namespace X { template<typename T, unsigned int SIZE> bool IsArray (T (&a)[SIZE]) { return true; } template<typename T> bool IsArray (T *p) { return false; } } namespace Y { typedef char (&yes)[2]; template<typename T, unsigned int SIZE> yes IsArray (T (&a)[SIZE]); template<typename T> char IsArray (T *p); } using namespace X; int main () { const char *s2 = "hello"; #if 1 if(true == IsArray(s2)) throw 0; #else if(sizeof(IsArray(s2)) == sizeof(yes)) throw 0; #endif } |
bmFtZXNwYWNlIFgKewogIHRlbXBsYXRlPHR5cGVuYW1lIFQsIHVuc2lnbmVkIGludCBTSVpFPgogIGJvb2wgSXNBcnJheSAoVCAoJmEpW1NJWkVdKSB7IHJldHVybiB0cnVlOyB9CiAgCiAgdGVtcGxhdGU8dHlwZW5hbWUgVD4KICBib29sIElzQXJyYXkgKFQgKnApIHsgcmV0dXJuIGZhbHNlOyB9Cn0KICAKbmFtZXNwYWNlIFkKewogIHR5cGVkZWYgY2hhciAoJnllcylbMl07CiAgCiAgdGVtcGxhdGU8dHlwZW5hbWUgVCwgdW5zaWduZWQgaW50IFNJWkU+CiAgeWVzIElzQXJyYXkgKFQgKCZhKVtTSVpFXSk7CiAgCiAgdGVtcGxhdGU8dHlwZW5hbWUgVD4KICBjaGFyIElzQXJyYXkgKFQgKnApOwp9Cgp1c2luZyBuYW1lc3BhY2UgWDsKCmludCBtYWluICgpCnsKICBjb25zdCBjaGFyICpzMiA9ICJoZWxsbyI7CiNpZiAxCiAgaWYodHJ1ZSA9PSBJc0FycmF5KHMyKSkKICAgIHRocm93IDA7CiNlbHNlCiAgaWYoc2l6ZW9mKElzQXJyYXkoczIpKSA9PSBzaXplb2YoeWVzKSkKICAgIHRocm93IDA7CiNlbmRpZgp9Cg==
-
upload with new input
-
result: Success time: 0.01s memory: 2720 kB returned value: 0


