[cfe-commits] r63983 - in /cfe/trunk: include/clang/AST/Expr.h include/clang/AST/StmtVisitor.h include/clang/Basic/DiagnosticSemaKinds.def lib/AST/Expr.cpp lib/Parse/ParseExpr.cpp lib/Sema/Sema.h lib/Sema/SemaExpr.cpp lib/Sema/SemaInherit.h lib/Sema/SemaLookup.cpp test/SemaCXX/member-pointer.cpp www/cxx_status.html

Chris Lattner clattner at apple.com
Sat Feb 7 10:49:38 PST 2009


On Feb 7, 2009, at 2:23 AM, Sebastian Redl wrote:

> Chris Lattner wrote:
>>
>> On Feb 6, 2009, at 4:15 PM, Sebastian Redl wrote:
>>
>>> +++ cfe/trunk/lib/Sema/SemaExpr.cpp Fri Feb  6 18:15:38 2009
>>> +
>>> +inline QualType Sema::CheckPointerToMemberOperands(
>>> +  Expr *&lex, Expr *&rex, SourceLocation Loc, bool isIndirect)
>>> +{
>>
>> Should this go in SemaExprCXX?
> I put it there at first, but these are all inline, so it wouldn't  
> link.
> Besides, it's a helper of CreateBuiltinBinOp, so it's probably  
> better to
> group it with all its siblings.

Why does this need to be inline?

>>> +++ cfe/trunk/lib/Sema/SemaInherit.h Fri Feb  6 18:15:38 2009
>>> @@ -16,6 +16,7 @@
>>> #ifndef LLVM_CLANG_SEMA_INHERIT_H
>>> #define LLVM_CLANG_SEMA_INHERIT_H
>>>
>>> +#include "Sema.h"
>>> #include "clang/AST/DeclarationName.h"
>>> #include "clang/AST/DeclBase.h"
>>> #include "clang/AST/Type.h"
>>> @@ -25,7 +26,6 @@
>>> #include <map>
>>>
>>> namespace clang {
>>> -  class Sema;
>>
>> Why is this needed?
> Because some change (not mine) made SemaInherit depend on some inner
> types of Sema. It's just that before me, no one included SemaInherit.h
> before Sema.h, so it wasn't noticed.

Aha, the bug here is that SemaInherit.cpp doesn't #include  
SemaInherit.h first,

-Chris



More information about the cfe-commits mailing list