[cfe-commits] Add cpp frontend

Douglas Gregor dgregor at apple.com
Sun Mar 6 10:35:40 PST 2011


On Mar 6, 2011, at 10:33 AM, Chris Lattner wrote:

> 
> On Mar 6, 2011, at 10:24 AM, Douglas Gregor wrote:
> 
>>>> +++ tools/driver/driver.cpp	(working copy)
>>>> @@ -342,6 +342,11 @@
>>>>   TheDriver.CCCIsCXX = true;
>>>> }
>>>> 
>>>> +  if (llvm::StringRef(ProgName).endswith("cpp") ||
>>>> +      llvm::StringRef(ProgName).rsplit('-').first.endswith("cpp")) {
>>>> +    TheDriver.CCCIsCPP = true;
>>>> +  }
>> 
>> Why is this an "endswith" check rather than equality comparison? I suspect that we just want to match "cpp" or "cpp-version".
>> 
>> Even as "cpp", we're still going to outright reject "-traditional". Is that still the right thing to do?
>> 
>> Anyway, this looks okay to me, but I'd love to hear Daniel's opinion on this.
> 
> My understanding is that cpp also defaults to a mix of traditional mode as well as ISO conformance, though it isn't clear to me looking at the man page.
> 
> From my perspective, this patch looks like a reasonable first start towards clang implementing full /usr/bin/cpp, so I'm ok with it even if it isn't solving all open issues.

Same here. And, unlike an unfinished feature in the compiler proper, nobody is going to trip over this unless some integrate goes and symlinks "cpp" over to "clang".

	- Doug



More information about the cfe-commits mailing list