diff --git a/lib/output.js b/lib/output.js index 37e30c0e..1ef92dde 100644 --- a/lib/output.js +++ b/lib/output.js @@ -386,13 +386,14 @@ function OutputStream(options) { var comments = start.comments_before || []; // XXX: ugly fix for https://github.com/mishoo/UglifyJS2/issues/112 - // if this node is `return` or `throw`, we cannot allow comments before - // the returned or thrown value. - if (self instanceof AST_Exit && self.value - && self.value.start.comments_before - && self.value.start.comments_before.length > 0) { - comments = comments.concat(self.value.start.comments_before); - self.value.start.comments_before = []; + // and https://github.com/mishoo/UglifyJS2/issues/372 + if (self instanceof AST_Exit && self.value) { + self.value.walk(new TreeWalker(function(node){ + if (node.start.comments_before) { + comments = comments.concat(node.start.comments_before); + node.start.comments_before = []; + } + })); } if (c.test) {