fdwr/TextLayoutSampler

Usage of modules seems incompatible with VS2019 16.8 (Pre 6)

KaoDome opened this issue · 2 comments

Hi, out of curiosity I downloaded the current Git code and tried to build it with VS2019 Preview, in case there was a difference from what was already provided in binary form.

Apparently the the usage of modules seems to be incompatible with the newer release (although I think the whole module thing is experimental or actively being worked on), so I thought of letting you know.

The application builds perfectly when C++ modules are disabled, and as far as I could tell the current binary is more than enough for the purpose of the app, so this is very low priority, if at all.

fdwr commented

@KaoDome:

the whole module thing is experimental

Yeah, modules are more stable now in VS, but they've been in flux the past few years. I built with Microsoft Visual Studio Enterprise 2019 Version 16.7.3 fine, but I see 16.7.7 now exists (and 16.8.0 preview). I'll update and retry building to see what errors/warning arise...

The application builds perfectly when C++ modules are disabled

Cool. I try to keep it building with both modules enabled and disabled, in case there are compiler bugs (many times the compiler has crashed while still experimental, and so keeping headers as a fallback is valuable).

in case there was a difference from what was already provided in binary form.

True, there were minimal updates since the last release, and so I didn't bother (just adding DWrite grid fit mode and mildly improving arrow key selection of items in list arrow), but I'm happy to publish another release. Cheers.

fdwr commented

I just disabled modules by default (again...), and I'll re-enable them someday when they're actually mature.

VS 16.8.4 broke modules again with more internal compiler errors, even after addressing the changes to the modules spec (e.g. requiring that global module fragments not be inside a preprocessor #ifdef, just to make our life harder when trying to dual build a project with and without modules support 😅).