@@ -3856,13 +3856,6 @@ static void printParameterFlags(ASTPrinter &printer,
38563856 printer.printKeyword (" nonisolated(nonsending)" , options, " " );
38573857 }
38583858
3859- if (!options.excludeAttrKind (TypeAttrKind::Autoclosure) &&
3860- flags.isAutoClosure ())
3861- printer.printAttrName (" @autoclosure " );
3862- if (!options.excludeAttrKind (TypeAttrKind::NoDerivative) &&
3863- flags.isNoDerivative ())
3864- printer.printAttrName (" @noDerivative " );
3865-
38663859 switch (flags.getOwnershipSpecifier ()) {
38673860 case ParamSpecifier::Default:
38683861 /* nothing*/
@@ -3908,15 +3901,22 @@ static void printParameterFlags(ASTPrinter &printer,
39083901 printer.printKeyword (" isolated" , options, " " );
39093902 }
39103903
3904+ if (flags.isCompileTimeLiteral ())
3905+ printer.printKeyword (" _const" , options, " " );
3906+
3907+ if (!options.excludeAttrKind (TypeAttrKind::Autoclosure) &&
3908+ flags.isAutoClosure ())
3909+ printer.printAttrName (" @autoclosure " );
3910+ if (!options.excludeAttrKind (TypeAttrKind::NoDerivative) &&
3911+ flags.isNoDerivative ())
3912+ printer.printAttrName (" @noDerivative " );
3913+
39113914 // `inout` implies `@escaping`
39123915 if (flags.getOwnershipSpecifier () != ParamSpecifier::InOut) {
39133916 if (!options.excludeAttrKind (TypeAttrKind::Escaping) && escaping)
39143917 printer.printAttrName (" @escaping " );
39153918 }
39163919
3917- if (flags.isCompileTimeLiteral ())
3918- printer.printKeyword (" _const" , options, " " );
3919-
39203920 if (flags.isConstValue ())
39213921 printer.printAttrName (" @const " );
39223922}
0 commit comments