Index: dart/sdk/lib/_internal/compiler/implementation/lib/regexp_helper.dart |
diff --git a/dart/sdk/lib/_internal/compiler/implementation/lib/regexp_helper.dart b/dart/sdk/lib/_internal/compiler/implementation/lib/regexp_helper.dart |
index b62b0b5c5b46e2d45906f891556561f8d88101ae..c9f65406052d873d504cfd049b5f521d1bd4ec59 100644 |
--- a/dart/sdk/lib/_internal/compiler/implementation/lib/regexp_helper.dart |
+++ b/dart/sdk/lib/_internal/compiler/implementation/lib/regexp_helper.dart |
@@ -33,12 +33,12 @@ regExpMakeNative(JSSyntaxRegExp regExp, {bool global: false}) { |
bool isMultiLine = regExp.isMultiLine; |
bool isCaseSensitive = regExp.isCaseSensitive; |
checkString(pattern); |
- StringBuffer sb = new StringBuffer(); |
- if (isMultiLine) sb.add('m'); |
- if (!isCaseSensitive) sb.add('i'); |
- if (global) sb.add('g'); |
+ String flags = ''; |
+ if (isMultiLine) flags = '${flags}m'; |
+ if (!isCaseSensitive) flags = '${flags}i'; |
+ if (global) flags = '${flags}g'; |
try { |
- return JS('var', r'new RegExp(#, #)', pattern, sb.toString()); |
+ return JS('var', r'new RegExp(#, #)', pattern, flags); |
} catch (e) { |
throw new IllegalJSRegExpException(pattern, |
JS('String', r'String(#)', e)); |