[vlc-devel] [PATCH 09/12] network: io: Remove VLA usages

Steve Lhomme robux4 at ycbcr.xyz
Fri Dec 11 09:51:56 CET 2020


On 2020-12-10 16:44, Rémi Denis-Courmont wrote:
> Le jeudi 10 décembre 2020, 09:11:25 EET Steve Lhomme a écrit :
>> We could very well support MSVC (again) now that they support all
>> mandatory C11 features [1].
> 
> That link says that they do not support all mandatory features. It also

"All the required features of C11 and C17 are supported." +
"there is currently no support for any C11 optional features"

> explicitly states that they lack three features that we use (VLAs, threads,
> atomics) and one feature that we very well could take into use (complex
> numbers, e.g. for rotation).

* VLA we don't really need.
* atomics I've had a corresponding file (code that used to be in VLC) 
[1] to hide the fact MSVC doesn't have it. This is not really an issue.
* threads.h we only seem to use it for _Thread_local but we already have 
the corresponding workaround for MSVC [2]. So this is not an issue 
either. So much that clang doesn't have it either.

> It's not clear if they support C11 Unicode either.

We don't seem to use any of that.

>> They are going to add thread/atomics "soon".
> 
> In other words, we are not even talking about a real readily available
> compiler, but what could just as well be vaporware.

See above. We don't need them to support it.

>> But VLA is not on the horizon for pragmatic reasons [2].
>>
>> This no microcontroller/short on memory platform support.
> 
> And yet, again, they don't conform to hosted C11, with or without options.

[1] https://github.com/robUx4/vlc-msvc/blob/master/headers/stdatomic.h
[2] 
https://code.videolan.org/videolan/vlc/-/blob/master/include/vlc_fixups.h#L54


More information about the vlc-devel mailing list