diff --git a/CompileScore/Shared/Editor/Extractors/ExtractorBase.cs b/CompileScore/Shared/Editor/Extractors/ExtractorBase.cs index 1096303..caa05f5 100644 --- a/CompileScore/Shared/Editor/Extractors/ExtractorBase.cs +++ b/CompileScore/Shared/Editor/Extractors/ExtractorBase.cs @@ -121,6 +121,7 @@ protected void AddCustomSettings(ProjectProperties projProperties, IMacroEvaluat AppendMSBuildStringToList(projProperties.PrepocessorDefinitions, evaluator.Evaluate(evaluatorExtra.Evaluate(customSettings.AdditionalPreprocessorDefinitions))); projProperties.ExtraArguments += evaluator.Evaluate(evaluatorExtra.Evaluate(customSettings.AdditionalCommandLine)); projProperties.ShowWarnings = customSettings.EnableWarnings; + projProperties.Standard = customSettings.LanguageStandard != ProjectProperties.StandardVersion.Default ? customSettings.LanguageStandard : projProperties.Standard; } } } diff --git a/CompileScore/Shared/Settings/SolutionSettings.cs b/CompileScore/Shared/Settings/SolutionSettings.cs index 342a443..0d27c91 100644 --- a/CompileScore/Shared/Settings/SolutionSettings.cs +++ b/CompileScore/Shared/Settings/SolutionSettings.cs @@ -65,6 +65,9 @@ public class ParserSettings [UIDescription(Label = "Automatic Extraction", Tooltip = "If true, it will try to extract the architecture, include paths, preprocessor macros... from the current solution.")] public bool AutomaticExtraction { set; get; } = true; + [UIDescription(Label = "Language Standard", Tooltip = "The Language standard to use when invoking the parser (Default) for untouched.")] + public ProjectProperties.StandardVersion LanguageStandard { set; get; } = ProjectProperties.StandardVersion.Default; + [UIDescription(Label = "Explicit Commands File", FilterMethod = "DisplayCMakeCommandsFile", Tooltip = "File location for the build commands exported by CMAKE_EXPORT_COMPILE_COMMANDS=1 (This fields allows a limited set of $(SolutionDir) style macros)")] public string CMakeCommandsFile { set; get; } = ""; @@ -85,7 +88,6 @@ public class ParserSettings [UIDescription(Label = "Parser Output Folder", Tooltip = "File location where the Clang Parser will output the layout results. This files are temporary. This field will default to the extension installation folder. (This fields allows $(SolutionDir) style macros)")] public string ParserOutputFolder { set; get; } = ""; - };