"fatal error C1060: compiler is out of heap space" for lib/edgepaint/lab_gamut.c

Two things seem necessary to be able to build on the GitLab Windows runner:

  1. Disable code analysis completely (there are flavors)
  2. Rewrite lab_gamut.c to use a plain array instead of an array of structs.

I measured the memory consumption on my local laptop with different settings:

Code analysis Plain array Memory consumption Builds on GitLab
Yes No 3212 MB No
Yes Yes 2813 MB No
No No 969 MB No
No Yes 726 MB Yes

Unless I hear objections I’m going to pursue this.

TODO:

  • Rewrite lab.c (the consumer of lab_gamut.c) to use the plain array and test it.
  • Clean up the lab_gamut project settings to get a MVC.
  • Clean up the GitLab CI configuration and merge with current Linux builds.
  • Add deploy of Windows binaries to https://www2.graphviz.org/Packages/
  • Create MR for review
1 Like