when u can't remember which header file declares mallocpic.twitter.com/DAm3LkyeZs
You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more
Assuming that's complete, it's UB even in C89 because strlen is undeclared and the implicit return type (and likewise argument to malloc) is wrong.
Assume the declaration was "char * malloc(size_t);". Would a use of malloc() be defined behavior b/c char * is compatible w/ void * (since they have to be the same size)?
Yes that's also UB. It's not compatible.
(Asking sincerely, not accusatory) Which part of the standard says that void * and char * are not compatible? They have to be the same size; is there anything that says they don't have to have the same bit pattern repr?
You're asking for the opposite of what you want. Unless something says they are then they're not. Size & representation are irrelevant.
Thankfully it's not like I wrote code like this. AFAICT, (implicit) casting from void * to char * and vice-versa means I can use a char * in place of a void * everywhere except: 1. Dereferencing a void * 2. Redeclaring an existing function that takes/returns void * w/ a char*?
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.