LangOptions getFormattingLangOpts(const FormatStyle &Style) {
LangOptions LangOpts;
+ FormatStyle::LanguageStandard LexingStd =
+ Style.Standard == FormatStyle::LS_Auto ? FormatStyle::LS_Cpp11
+ : Style.Standard;
LangOpts.CPlusPlus = 1;
- LangOpts.CPlusPlus11 = Style.Standard >= FormatStyle::LS_Cpp11;
- LangOpts.CPlusPlus14 = Style.Standard >= FormatStyle::LS_Cpp11;
- LangOpts.CPlusPlus17 = Style.Standard >= FormatStyle::LS_Cpp11;
- LangOpts.CPlusPlus2a = Style.Standard >= FormatStyle::LS_Cpp11;
+ LangOpts.CPlusPlus11 = LexingStd >= FormatStyle::LS_Cpp11;
+ LangOpts.CPlusPlus14 = LexingStd >= FormatStyle::LS_Cpp11;
+ LangOpts.CPlusPlus17 = LexingStd >= FormatStyle::LS_Cpp11;
+ LangOpts.CPlusPlus2a = LexingStd >= FormatStyle::LS_Cpp11;
LangOpts.LineComment = 1;
bool AlternativeOperators = Style.isCpp();
LangOpts.CXXOperatorNames = AlternativeOperators ? 1 : 0;