[tor-dev] MSVC compile failure

Gisle Vanem gvanem at online.no
Tue Mar 21 10:45:14 UTC 2023


Gabriela Moldovan wrote:

> Hi,
> 
> On Sat Mar 18, 2023 at 1:05 PM GMT, Gisle Vanem wrote:
>> Hello list. Anybody out there?
>>
>> Trying to compile Tor with 'cl' ver. 19.36.32323 from
>> yesterdays 'git master', I got this error in
>> 'src/feature/hs/hs_metrics_entry.c':
>>
>> hs/hs_metrics_entry.c(98,3): error C2099: initializer is not a constant
>>     {
>>     ^
>> hs/hs_metrics_entry.c(106,3): error C2099: initializer is not a constant
>>     {
>>     ^
>>
>> ----------
>>
>> This MSVC compiler is rather stupid; it fails to parse that
>> 'static const size_t hs_metrics_circ_build_time_buckets_size'
>>
>> is truly 'const'. No problem with 'clang-cl'.
>> But this patch works:
>>
>> --- a/feature/hs/hs_metrics_entry.c 2023-03-17 18:00:57
>> +++ b/feature/hs/hs_metrics_entry.c 2023-03-18 13:56:58
>> @@ -28,8 +28,7 @@
>>      60000  /* 60s */
>>    };
>>
>> -static const size_t hs_metrics_circ_build_time_buckets_size =
>> -  ARRAY_LENGTH(hs_metrics_circ_build_time_buckets);
>> +#define hs_metrics_circ_build_time_buckets_size ARRAY_LENGTH(hs_metrics_circ_build_time_buckets)
>>
>> -----------------
>>
>> Just letting you know here.
> 
> Ah, I think my changes from 1a60fa54 broke it.
> 
> While MSVC is not an officially supported build platform[1], if you want to
> submit an MR for the fix, I'd be happy to review it. I would do it myself, but I
> don't have an environment where I can test the proposed solution in.
> 
> [1]: https://gitlab.torproject.org/tpo/core/team/-/wikis/NetworkTeam/SupportedPlatforms

If MSVC is not among the supported compilers, it's a real pity.
It used to be. So why not anymore?

So I could not be bothered with a MR (whatever that is).
You mean PR?

-- 
--gv


More information about the tor-dev mailing list