================
Comment at: lib/AST/APValue.cpp:235-240
@@ +234,8 @@
+    return getComplexFloatReal().needsCleanup();
+  case ComplexInt:
+    assert(!getComplexIntReal().needsCleanup() &&
+           "_Complex cannot be created with large enough real values.");
+    assert(!getComplexIntImag().needsCleanup() &&
+           "_Complex cannot be created with large enough real values.");
+    return false;
+  case LValue:
----------------
Richard Smith wrote:
> Manuel Klimek wrote:
> > Richard Smith wrote:
> > > This seems likely to bite us in the future. Please implement this 
> > > "properly" rather than asserting, even though it can't happen today.
> > So, do we need to check both here? Or is only one enough? Given how little 
> > I understand about the code I'm wary of implementing anything without being 
> > able to write any tests.
> > I'll give in eventually, but my gut feeling tells me that I'd want to know 
> > in the future when this changes, so I can go and write some test for it...
> Just checking one of them is fine. How about adding a test to your existing 
> test suite which just checks that compile fails for _Complex __int128, with a 
> comment indicating that it shouldn't leak if it works? That way, whoever adds 
> support for that will know to update the test.
Implemented like you proposed. I still expect this to bite us in the future 
more than not implementing it (for example, from what I understand of the code 
I'd expect I can get one where real needsCleanup() but imag doesn't, but I'm 
not sure).


http://llvm-reviews.chandlerc.com/D736

BRANCH
  memory-leak

ARCANIST PROJECT
  clang
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to