Richard,
Then the only possible solution is to create some temp var for array 
size and capture it (or make it global) + rebuild the original type to 
make it use this temp var. Another solution is to learn the capturing 
machinery to capture expressions.

Best regards,
Alexey Bataev
=============
Software Engineer
Intel Compiler Team

14.07.2014 4:17, Richard Smith пишет:
> The [C++ Array Extensions draft 
> TS](http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3639.html) 
> specifies how the C++ committee thinks VLAs in C++ ("Arrays of Runtime 
> Bound") should work, and I think it has different semantics for lambda 
> captures from those provided here =( In particular, it only allows the array 
> bound expression to be evaluated a single time, so the array bound itself 
> must be captured, rather than the variables that it references.
>
> So, we have a choice: we can go with what you have here (which seems 
> reasonable if we're providing the C-style VLAs), and we should do something 
> different if instead we want to align ourselves with the Array Extensions 
> draft TS and ARB semantics. If Array Extensions is going to become a full TS, 
> then we'll want to align with it eventually, and it doesn't make sense to me 
> to differ from it now, but it's not completely clear if that's going to 
> happen (there seemed to be weak consensus at the previous committee meeting 
> to abandon it).
>
> Thoughts?
>
> http://reviews.llvm.org/D4368
>
>

http://reviews.llvm.org/D4368



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

Reply via email to