diff --git a/documentation/index.html.erb b/documentation/index.html.erb index 4fe61d1e..920cdc62 100644 --- a/documentation/index.html.erb +++ b/documentation/index.html.erb @@ -41,12 +41,13 @@
Disclaimer: - CoffeeScript is just for fun and seriously alpha. There is no guarantee, + CoffeeScript is just for fun and seriously alpha. I'm sure that there are still + plenty of holes in the walls and leaks in the syntax. There is no guarantee, explicit or implied, of its suitability for any purpose. That said, it compiles into clean JavaScript (the good parts) that can use existing JavaScript libraries seamlessly, and can pass through JSLint without warnings. The compiled - scripts are quite readable — pretty-printed, with comments + output is quite readable — pretty-printed, with comments preserved intact.
diff --git a/index.html b/index.html index bd610f4d..71df7c15 100644 --- a/index.html +++ b/index.html @@ -27,12 +27,13 @@Disclaimer: - CoffeeScript is just for fun and seriously alpha. There is no guarantee, + CoffeeScript is just for fun and seriously alpha. I'm sure that there are still + plenty of holes in the walls and leaks in the syntax. There is no guarantee, explicit or implied, of its suitability for any purpose. That said, it compiles into clean JavaScript (the good parts) that can use existing JavaScript libraries seamlessly, and can pass through JSLint without warnings. The compiled - scripts are quite readable — pretty-printed, with comments + output is quite readable — pretty-printed, with comments preserved intact.
diff --git a/lib/coffee_script/nodes.rb b/lib/coffee_script/nodes.rb index 1b7484ff..2367a03a 100644 --- a/lib/coffee_script/nodes.rb +++ b/lib/coffee_script/nodes.rb @@ -524,6 +524,8 @@ module CoffeeScript # A try/catch/finally block. class TryNode < Node statement + custom_return + custom_assign attr_reader :try, :error, :recovery, :finally @@ -540,7 +542,7 @@ module CoffeeScript indent = o[:indent] o[:indent] += TAB catch_part = @recovery && " catch (#{@error}) {\n#{@recovery.compile(o)}\n#{indent}}" - finally_part = @finally && " finally {\n#{@finally.compile(o)}\n#{indent}}" + finally_part = @finally && " finally {\n#{@finally.compile(o.merge(:assign => nil, :return => nil))}\n#{indent}}" write("try {\n#{@try.compile(o)}\n#{indent}}#{catch_part}#{finally_part}") end end