Having no space between pattern and following word is deprecated at -e line 2. Having no space between pattern and following word is deprecated at -e line 2 (#1) (D syntax) You had a word that isn't a regex modifier immediately following a pattern without an intervening space. If you are trying to use the /le flags on a substitution, use /el instead. Otherwise, add white space between the pattern and following word to eliminate the warning. As an example of the latter, the two constructs: $a =~ m/$foo/sand $bar $a =~ m/$foo/s and $bar both currently mean the same thing, but it is planned to disallow the first form in Perl 5.18. And, $a =~ m/$foo/and $bar will be disallowed too.