On Dec 5, 2012, at 3:31 PM, Richard Smith <[email protected]> wrote:
> On Wed, Dec 5, 2012 at 8:42 AM, David Blaikie <[email protected]> wrote: > Richard - apparently this didn't make it into the 3.2 branch, could you > approve? > > Yes, this is important. Approved, but Doug was owner here for 3.2, and I'm > not sure whether Pawel is looking at the owners as listed in the branch or on > trunk, so you may need his approval too. Richard's approval of Sema patches is fine. (Approved regardless) - Doug > On Tue, Nov 13, 2012 at 10:53 AM, David Blaikie <[email protected]> wrote: > > On Mon, Nov 12, 2012 at 3:41 PM, Richard Smith <[email protected]> > > wrote: > >> On Mon, Nov 12, 2012 at 2:25 PM, David Blaikie <[email protected]> wrote: > >>> Author: dblaikie > >>> Date: Mon Nov 12 16:25:41 2012 > >>> New Revision: 167766 > >>> > >>> URL: http://llvm.org/viewvc/llvm-project?rev=167766&view=rev > >>> Log: > >>> Fix more try scoping bugs introduced by r167650. > >>> > >>> Introduces more clear scoping flags & flag combinations which should > >>> hopefully > >>> be more understandable. > >>> > >>> Modified: > >>> cfe/trunk/include/clang/Sema/Scope.h > >>> cfe/trunk/lib/Parse/ParseStmt.cpp > >>> cfe/trunk/lib/Sema/IdentifierResolver.cpp > >>> cfe/trunk/test/CXX/basic/basic.scope/basic.scope.local/p2.cpp > >>> > >>> Modified: cfe/trunk/include/clang/Sema/Scope.h > >>> URL: > >>> http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Sema/Scope.h?rev=167766&r1=167765&r2=167766&view=diff > >>> ============================================================================== > >>> --- cfe/trunk/include/clang/Sema/Scope.h (original) > >>> +++ cfe/trunk/include/clang/Sema/Scope.h Mon Nov 12 16:25:41 2012 > >>> @@ -84,11 +84,18 @@ > >>> /// TryScope - This is the scope of a C++ try statement. > >>> TryScope = 0x1000, > >>> > >>> + /// CatchScope - This is the scope of a C++ catch statement. > >>> + CatchScope = 0x2000, > >>> + > >>> + /// FnTryCatchScope - This is the scope for a function-level C++ try > >>> or > >>> + /// catch scope. > >>> + FnTryCatchScope = 0x4000, > >>> + > >>> /// FnTryScope - This is the scope of a function-level C++ try scope. > >>> - FnTryScope = 0x3000, > >>> + FnTryScope = TryScope | FnTryCatchScope, > >>> > >>> /// FnCatchScope - This is the scope of a function-level C++ catch > >>> scope. > >>> - FnCatchScope = 0x4000 > >>> + FnCatchScope = CatchScope | FnTryCatchScope > >> > >> The other enumeration values here are all single flags, and callers | > >> together the relevant ones. I think the users of this class would be > >> clearer and more consistent without these two additional values. > >> > >> Also, you don't seem to be using the CatchScope flag for anything; is > >> it necessary? > > > > Addressed both of these in r167856. I think initially the grouped > > flags made sense when it made it easier to do x & GROUP == GROUP but > > after refactoring the tests in IdentifierResolver I didn't end up > > needing to test multiple flags simultaneously. > > > > The CatchScope flag was just for consistency but, yes, it's unused so > > I've removed it. >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
