Specify the source language: C, C++, Objective-C, or assembly. This has nothing to do with standards
conformance or extensions; it merely selects which base syntax to expect. If you give none of these
options, cpp will deduce the language from the extension of the source file: .c, .cc, .m, or .S.
Some other common extensions for C++ and assembly are also recognized. If cpp does not recognize the
extension, it will treat the file as C; this is the most generic mode.
Note: Previous versions of cpp accepted a -lang option which selected both the language and the
standards conformance level. This option has been removed, because it conflicts with the -l option.