================
Comment at: lib/Format/UnwrappedLineParser.cpp:1042
@@ +1041,3 @@
+  bool NeedsUnwrappedLine = false;
+  if (FormatTok->Tok.is(tok::colon)) {
+      // We are in a function try block, what comes is an initializer list
----------------
Manuel Klimek wrote:
> Alexander Rojas wrote:
> > Manuel Klimek wrote:
> > > I'm wondering whether we just want to eat everything up to the next '{'. 
> > > In general, we try to parse as little as possible in the structural 
> > > parser.
> > > 
> > > If we decide we really need to parse the structure here, I think we 
> > > should pull out a parseInitializerList() method.
> > I've been thinking on how to parse the initializer list, and it might be 
> > quite cumbersome. I've been thinking on leaving out of this patch the 
> > ability of dealing with function-try blocks and leave it for latter (since 
> > I do this as a hobby, there's really a limit on how much time I can spend 
> > on this).
> I think we're misunderstanding each other here... What I mean is that we 
> should parse *less* accurately. The thing to remember is that clang-format 
> must work well on incorrect code. Thus, the structural parser tries hard to 
> find only the structural elements that matter.
> 
> Regarding the time limits you have: especially when you do this as a hobby, 
> I'd say this is the perfect venue to try to get things "right". As nobody 
> forces you to do it, there's also no deadline pressure, so you can take all 
> the time you need... The worst that can happen is that somebody asks you 
> whether they can take over and finish the patch if they need it more urgently.
I don't think you can just consume until the next brace, due to brace 
initialization:

  try : foo{}, bar{nullptr} {} catch (...) {}



http://llvm-reviews.chandlerc.com/D2555
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to