   SwitchCase: (node) ->
     @injectComments(node, 'consequent')
 
-  Block: (node) ->
+  BlockComment: (node) ->
     @convertCommentPrefixes(node)
 
-  ###
+  ###*
+  # updateCommentTypes():
+  # Updates comment `type` as needed. It changes *Block* to *BlockComment*, and
+  # *Line* to *LineComment*. This makes it play nice with the rest of the AST,
+  # because "Block" and "Line" are ambiguous.
+  ###
+
+  updateCommentTypes: ->
+    for c in @comments
+      switch c.type
+        when 'Block' then c.type = 'BlockComment'
+        when 'Line'  then c.type = 'LineComment'
+
+  ###*
   # injectComments():
   # Injects comment nodes into a node list.
   ###


  Program: (node) ->
    @comments = node.comments
    @BlockStatement node

  BlockStatement: (node) ->


###**
# CommentTransforms:
# Injects comments as nodes in the AST. This takes the comments in the
# `Program` node, finds list of expressions in bodies (eg, a BlockStatement's
# `body`), and injects the comment nodes whenever relevant.
###

class CommentTransforms extends TransformerBase
