The C99 standard specifies that the stdlib.h header should be provided with amongst other things malloc()/free(). So, C99 provides heap allocation functions.
Also, some people will argue that 'asking' an array on the stack is also allocation ;).
They're standardized, so they are part of the language.
"Language" has slightly different meanings in different contexts. Perhaps he's talking about something in a theoretic context, as opposed to practice? Smalltalk has no special syntax for allocation (creating new objects) either.
It doesn't even let you do that -- those things are external library calls.