I was looking at the source code for libffi, which is part of the GCC source, and came across this:
// Return stack to previous state and call the function
add esp, 8
// FIXME: Align the stack to a 128-bit boundary to avoid
// potential performance hits.
call [ebp + 28]
Oh god I lol'd.
Post your funny C code
Name:
Anonymous2007-07-12 12:35 ID:Bb5GfBi7
/* woo. i'm actually going to comment this function. isn't that fun. make sure to follow along, kids */
void serv_got_im(struct gaim_connection *gc, char *name, char *message, int away, time_t mtime)
{
char *buffy;
char *angel;
int plugin_return;
struct conversation *cnv;
int new_conv = 0;
/* we should update the conversation window buttons and menu, if it exists. */
cnv = find_conversation(name);
if (cnv)
set_convo_gc(cnv, gc);
/* we do the new_conv check here in case any plugins decide to create it */
else
new_conv = 1;
/* plugin stuff. we pass a char ** but we don't want to pass what's been given us
* by the prpls. so we create temp holders and pass those instead. it's basically
* just to avoid segfaults. */
buffy = g_strdup(message);
angel = g_strdup(name);
plugin_return = plugin_event(event_im_recv, gc, &angel, &buffy, 0);
if (!buffy || !angel || plugin_return) {
if (buffy)
g_free(buffy);
if (angel)
g_free(angel);
return;
}
g_snprintf(message, strlen(message) + 1, "%s", buffy);
g_free(buffy);
g_snprintf(name, strlen(name) + 1, "%s", angel);
g_free(angel);
ONE WORD: THE FORCED USE OF RANDOM VARIABLE NAMES DUE TO PRIMMITIVE LANGUAGE