Microsoft.Terminal.Settings.Model.Lib always fails to compile #11703

Closed
opened 2026-01-31 02:55:15 +00:00 by claunia · 6 comments
Owner

Originally created by @ahmed605 on GitHub (Dec 5, 2020).

Microsoft.Terminal.Settings.Model.Lib always fails to compile

here're errors:

I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(68,18): error C2065: 'guid': undeclared identifier
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(68,23): error C2146: syntax error: missing ')' before identifier 'guid'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(69,11): error C2065: 'guid': undeclared identifier
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(69,15): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(70,1): error C2448: '_Guid': function-style initializer appears to be a function definition
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(468,59): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(468,59): error C2143: syntax error: missing ',' before '&'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(469,1): error C2511: 'winrt::guid winrt::Microsoft::Terminal::Settings::Model::implementation::Profile::_GenerateGuidForProfile(const int) noexcept': overloaded member function not found in 'winrt::Microsoft::Terminal::Settings::Model::implementation::Profile'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.h(45): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::Profile'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(473,33): error C2065: 'source': undeclared identifier
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(474,127): error C2065: 'source': undeclared identifier
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(474,103): error C2672: 'gsl::as_bytes': no matching overloaded function found
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(474,135): error C2660: 'Microsoft::Console::Utils::CreateV5Uuid': function does not take 1 arguments
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(479,78): error C2065: 'name': undeclared identifier
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(479,54): error C2672: 'gsl::as_bytes': no matching overloaded function found
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(479,84): error C2660: 'Microsoft::Console::Utils::CreateV5Uuid': function does not take 1 arguments
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(180,61): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(180,61): error C2143: syntax error: missing ',' before '&'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(181,1): error C2511: 'void winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::UnparsedDefaultProfile(const int)': overloaded member function not found in 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.h(34): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(182,36): error C2065: 'value': undeclared identifier
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(182,41): error C2597: illegal reference to non-static member 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::_UnparsedDefaultProfile'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(182,41): error C3867: 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::_UnparsedDefaultProfile': non-standard syntax; use '&' to create a pointer to member
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(184,35): error C2065: 'value': undeclared identifier
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(185,37): error C2597: illegal reference to non-static member 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::_validDefaultProfile'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(327,64): error C2653: 'Model': is not a class or namespace name
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(328,1): error C2511: 'void winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::AddColorScheme(const winrt::Microsoft::Terminal::Settings::Model::implementation::ColorScheme &)': overloaded member function not found in 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.h(34): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(220,38): error C2065: 'SettingsLoadWarnings': undeclared identifier
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(220,59): error C2146: syntax error: missing ')' before identifier 'warning'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(221,1): error C2143: syntax error: missing ';' before '{'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(221,1): error C2447: '{': missing function header (old-style formal list?)
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(605,77): error C2653: 'Model': is not a class or namespace name
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(606,1): error C2511: 'winrt::guid winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::GetProfileForArgs(const winrt::Microsoft::Terminal::Settings::Model::implementation::NewTerminalArgs &) const': overloaded member function not found in 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.h(57): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(608,24): error C2451: conditional expression of type 'const winrt::Microsoft::Terminal::Settings::Model::implementation::NewTerminalArgs' is illegal
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(608,9): message : No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(612,30): error C2352: 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::_GetProfileGuidByIndex': illegal call of non-static member function
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.h(132): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::_GetProfileGuidByIndex'
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(615,25): error C2352: 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::_GetProfileGuidByName': illegal call of non-static member function
I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.h(131): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::_GetProfileGuidByName'

Side Notes:

  • I tried both main branch and release-1.5 branch
  • tried compiling on both Debug x64 and Release x64 configurations
  • I'm building using Visual Studio
Originally created by @ahmed605 on GitHub (Dec 5, 2020). `Microsoft.Terminal.Settings.Model.Lib` always fails to compile here're errors: ``` I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(68,18): error C2065: 'guid': undeclared identifier I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(68,23): error C2146: syntax error: missing ')' before identifier 'guid' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(69,11): error C2065: 'guid': undeclared identifier I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(69,15): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(70,1): error C2448: '_Guid': function-style initializer appears to be a function definition I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(468,59): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(468,59): error C2143: syntax error: missing ',' before '&' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(469,1): error C2511: 'winrt::guid winrt::Microsoft::Terminal::Settings::Model::implementation::Profile::_GenerateGuidForProfile(const int) noexcept': overloaded member function not found in 'winrt::Microsoft::Terminal::Settings::Model::implementation::Profile' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.h(45): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::Profile' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(473,33): error C2065: 'source': undeclared identifier I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(474,127): error C2065: 'source': undeclared identifier I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(474,103): error C2672: 'gsl::as_bytes': no matching overloaded function found I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(474,135): error C2660: 'Microsoft::Console::Utils::CreateV5Uuid': function does not take 1 arguments I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(479,78): error C2065: 'name': undeclared identifier I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(479,54): error C2672: 'gsl::as_bytes': no matching overloaded function found I:\Repos\terminal\src\cascadia\TerminalSettingsModel\Profile.cpp(479,84): error C2660: 'Microsoft::Console::Utils::CreateV5Uuid': function does not take 1 arguments I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(180,61): error C4430: missing type specifier - int assumed. Note: C++ does not support default-int I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(180,61): error C2143: syntax error: missing ',' before '&' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(181,1): error C2511: 'void winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::UnparsedDefaultProfile(const int)': overloaded member function not found in 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.h(34): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(182,36): error C2065: 'value': undeclared identifier I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(182,41): error C2597: illegal reference to non-static member 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::_UnparsedDefaultProfile' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(182,41): error C3867: 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::_UnparsedDefaultProfile': non-standard syntax; use '&' to create a pointer to member I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(184,35): error C2065: 'value': undeclared identifier I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(185,37): error C2597: illegal reference to non-static member 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::_validDefaultProfile' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(327,64): error C2653: 'Model': is not a class or namespace name I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.cpp(328,1): error C2511: 'void winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings::AddColorScheme(const winrt::Microsoft::Terminal::Settings::Model::implementation::ColorScheme &)': overloaded member function not found in 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\GlobalAppSettings.h(34): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::GlobalAppSettings' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(220,38): error C2065: 'SettingsLoadWarnings': undeclared identifier I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(220,59): error C2146: syntax error: missing ')' before identifier 'warning' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(221,1): error C2143: syntax error: missing ';' before '{' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(221,1): error C2447: '{': missing function header (old-style formal list?) I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(605,77): error C2653: 'Model': is not a class or namespace name I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(606,1): error C2511: 'winrt::guid winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::GetProfileForArgs(const winrt::Microsoft::Terminal::Settings::Model::implementation::NewTerminalArgs &) const': overloaded member function not found in 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.h(57): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(608,24): error C2451: conditional expression of type 'const winrt::Microsoft::Terminal::Settings::Model::implementation::NewTerminalArgs' is illegal I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(608,9): message : No user-defined-conversion operator available that can perform this conversion, or the operator cannot be called I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(612,30): error C2352: 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::_GetProfileGuidByIndex': illegal call of non-static member function I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.h(132): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::_GetProfileGuidByIndex' I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.cpp(615,25): error C2352: 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::_GetProfileGuidByName': illegal call of non-static member function I:\Repos\terminal\src\cascadia\TerminalSettingsModel\CascadiaSettings.h(131): message : see declaration of 'winrt::Microsoft::Terminal::Settings::Model::implementation::CascadiaSettings::_GetProfileGuidByName' ``` Side Notes: - I tried both `main` branch and `release-1.5` branch - tried compiling on both `Debug x64` and `Release x64` configurations - I'm building using Visual Studio
claunia added the Needs-TriageNeeds-Tag-FixNeeds-Attention labels 2026-01-31 02:55:15 +00:00
Author
Owner

@DHowett commented on GitHub (Dec 5, 2020):

It looks like you're missing NuGet packages and submodules. What version of VS, and have you followed the "building from source" steps?

@DHowett commented on GitHub (Dec 5, 2020): It looks like you're missing NuGet packages and submodules. What version of VS, and have you followed the "building from source" steps?
Author
Owner

@ahmed605 commented on GitHub (Dec 5, 2020):

It looks like you're missing NuGet packages and submodules. What version of VS, and have you followed the "building from source" steps?

I have the submodules, also I tried restoring Nuget packages but didn't help
Yes I followed building from source steps
My VS version is 16.3.1

@ahmed605 commented on GitHub (Dec 5, 2020): > It looks like you're missing NuGet packages and submodules. What version of VS, and have you followed the "building from source" steps? I have the submodules, also I tried restoring Nuget packages but didn't help Yes I followed building from source steps My VS version is 16.3.1
Author
Owner

@DHowett commented on GitHub (Dec 5, 2020):

You may need to update to a newer version of VS. Our CI and our local development is on 16.6 - 16.8. There have been some VS issues that the newer versions fix 😄

@DHowett commented on GitHub (Dec 5, 2020): You may need to update to a newer version of VS. Our CI and our local development is on 16.6 - 16.8. There have been some VS issues that the newer versions fix :smile:
Author
Owner

@ahmed605 commented on GitHub (Dec 5, 2020):

But I don't think that's the problem tho
I don't want to update because I heard that the newer versions has some issues with UWP apps (especially 16.8) like this one:

Can I go back if I updated?

@ahmed605 commented on GitHub (Dec 5, 2020): But I don't think that's the problem tho I don't want to update because I heard that the newer versions has some issues with UWP apps (especially 16.8) like this one: ![](https://cdn.discordapp.com/attachments/580484525075857428/778688694035021824/unknown.png) Can I go back if I updated?
Author
Owner

@DHowett commented on GitHub (Dec 5, 2020):

Hmm. You can’t. That is somewhat alarming.

@DHowett commented on GitHub (Dec 5, 2020): Hmm. You can’t. That is somewhat alarming.
Author
Owner

@ahmed605 commented on GitHub (Dec 6, 2020):

I have updated my VS and it's now compile!

@ahmed605 commented on GitHub (Dec 6, 2020): I have updated my VS and it's now compile!
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#11703