OpenGL и куча ошибок в GL.H

Пару месяцев назад перешёл на Visual studio 2022. Вчера открыл свой проект, а он не компилируется. Создал новый тестовый проект, а он тоже не компилируется.
main.cpp:

#include "cam.h"

int main()
{
	return 0;
}

cam.h:

#include <gl/GL.h>

cam.cpp:

#include "cam.h"

Выдаёт кучу странных ошибок:


1>------ Перестроение всех файлов начато: проект: Project1, Конфигурация: Debug Win32 ------
1>cam.cpp
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glAccum"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157,59): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1158,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1158,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1158,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1158,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1158,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1158,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glAlphaFunc"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1158,64): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1159,21): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1159,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1159,11): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "GLboolean"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1160,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1160,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1160,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1160,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1160,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1160,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glArrayElement"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1160,49): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1161,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1161,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1161,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1161,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1161,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1161,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glBegin"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1161,46): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1162,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1162,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1162,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1162,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1162,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1162,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glBindTexture"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1162,70): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1163,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1163,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1163,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1163,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1163,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1163,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glBitmap"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1163,148): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1164,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1164,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1164,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1164,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1164,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1164,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glBlendFunc"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1164,69): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1165,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1165,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1165,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1165,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1165,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1165,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glCallList"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1165,49): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1166,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1166,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1166,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1166,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1166,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1166,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glCallLists"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1166,82): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1167,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1167,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1167,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1167,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1167,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1167,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glClear"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1167,50): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1168,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1168,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1168,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1168,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1168,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1168,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glClearAccum"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1168,95): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1169,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1169,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1169,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1169,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1169,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1169,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glClearColor"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1169,99): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1170,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1170,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1170,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1170,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1170,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1170,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glClearDepth"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1170,54): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1171,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1171,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1171,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1171,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1171,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1171,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glClearIndex"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1171,49): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1172,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1172,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1172,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1172,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1172,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1172,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glClearStencil"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1172,49): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1173,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1173,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1173,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1173,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1173,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1173,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glClipPlane"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1173,77): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1174,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1174,16): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1174,1): error C2086: int WINGDIAPI: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "WINGDIAPI"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1174,16): error C2182: "APIENTRY": недопустимое использование "void"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1174,16): error C2086: int APIENTRY: переопределение
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1157): message : см. объявление "APIENTRY"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1174,25): error C2146: синтаксическая ошибка: отсутствие ";" перед идентификатором "glColor3b"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1174,74): error C4430: отсутствует спецификатор типа - предполагается int. Примечание. C++ не поддерживает int по умолчанию
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1175,11): error C2144: синтаксическая ошибка: перед "void" требуется ";"
1>C:\Program Files (x86)\Windows Kits\10\Include\10.0.19041.0\um\gl\GL.h(1178,16): fatal error C1003: число ошибок превышает 100; остановка компиляции
1>Создание кода...
1>Сборка проекта "Project1.vcxproj" завершена с ошибкой.
========== Перестроить все: успешно — 0, неудачно — 1, пропущено — 0 ==========

Если перенести строчку #include <gl/GL.h> в main.cpp - работает. Но тогда из cam.cpp нельзя вызывать функции OpenGL.
А в VS2019 работало :man_shrugging:

Как странно-то :thinking:
Если добавить #include <Windows.h> в cam.h - тогда работает :man_shrugging: А раньше достаточно было, что #include <Windows.h> в main.cpp лежал :man_shrugging:
Это вообще почему так стало? От чего зависит такое поведение?
И почему, если #include <gl/GL.h> находится в main.cpp, то #include <Windows.h> не нужен?

Windows.h вроде ж надо инклюдить до GL. c++ - #include <windows.h> causes a lot of syntax errors - Stack Overflow

Может проект как-то по-другому устроен был и где-то был инклюд Windows.h до этого?

Так и сделано. Он у меня всегда самой первой строчкой идёт.

Яж говорю - если написать #include <Windows.h> в main.cpp, то его больше нигде не надо было инклюдить. А теперь нет. Вон какие ошибки вылазят.
Теперь наоборот. Если в main.cpp заинклюдить cam.h и если там что-то заинклюжено, то инклюдить это в main.cpp уже не надо.
А раньше в main.cpp в любом случае приходилось инклюдить, как минимум, Windows.h. Но тогда в cam.h он не был нужен. А теперь, почему-то, нужен :thinking:
А если инклюдить gl.h в main.cpp - тогда Windows.h не нужен. Вот это самое странное :point_up:
И ещё. Если написать вот так:

#include <GL/glu.h>
#include <GLFW/glfw3.h>

Не работает. Выдаёт похожие ошибки. Теперь только так:

#define GLFW_INCLUDE_GLU
#include <GLFW/glfw3.h>

А раньше работало и так и так :point_up: Хотя, по-идее, первый вариант кривой.
Видимо, в компиляторе что-то изменилось :man_shrugging: