test_parser: add option `-x` to output XML
[nit.git] / src / frontend / simple_misc_analysis.nit
index 26d6710..cc12d01 100644 (file)
@@ -24,6 +24,7 @@ module simple_misc_analysis
 import phase
 
 redef class ToolContext
+       # Execute `AModule::do_simple_misc_analysis` on each module.
        var simple_misc_analysis_phase: Phase = new SimpleMiscAnalysisPhase(self, null)
 end
 
@@ -54,14 +55,9 @@ private class SimpleMiscVisitor
 
        var toolcontext: ToolContext
 
-       fun warning(node: ANode, msg: String)
+       fun warning(node: ANode, tag, msg: String)
        do
-               toolcontext.warning(node.hot_location, msg)
-       end
-
-       init(toolcontext: ToolContext)
-       do
-               self.toolcontext = toolcontext
+               toolcontext.warning(node.hot_location, tag, msg)
        end
 end
 
@@ -81,7 +77,7 @@ redef class ASignature
        redef fun after_simple_misc(v)
        do
                if self.n_opar != null and self.n_params.is_empty then
-                       v.warning(self, "Warning: superfluous parentheses.")
+                       v.warning(self, "parentheses", "Warning: superfluous parentheses.")
                end
        end
 end
@@ -94,7 +90,7 @@ end
 redef class AParExpr
        redef fun warn_parentheses(v)
        do
-               v.warning(self, "Warning: superfluous parentheses.")
+               v.warning(self, "parentheses", "Warning: superfluous parentheses.")
        end
 end
 
@@ -102,7 +98,7 @@ redef class AParExprs
        redef fun after_simple_misc(v)
        do
                if n_exprs.is_empty then
-                       v.warning(self, "Warning: superfluous parentheses.")
+                       v.warning(self, "parentheses", "Warning: superfluous parentheses.")
                end
        end
 end
@@ -117,17 +113,7 @@ redef class AReturnExpr
        end
 end
 
-redef class AContinueExpr
-       redef fun after_simple_misc(v)
-       do
-               var e = n_expr
-               if e != null then
-                       e.warn_parentheses(v)
-               end
-       end
-end
-
-redef class ABreakExpr
+redef class AEscapeExpr
        redef fun after_simple_misc(v)
        do
                var e = n_expr
@@ -141,7 +127,7 @@ redef class AWhileExpr
        redef fun after_simple_misc(v)
        do
                if n_expr isa ATrueExpr then
-                       v.warning(self, "Warning: use 'loop' instead of 'while true do'.")
+                       v.warning(self, "loop", "Warning: use `loop` instead of `while true do`.")
                else
                        n_expr.warn_parentheses(v)
                end
@@ -173,7 +159,7 @@ redef class AOnceExpr
        redef fun accept_simple_misc(v)
        do
                if v.once_count > 0 then
-                       v.warning(self, "Useless once in a once expression.")
+                       v.warning(self, "nested-once", "Warning: useless once in a once expression.")
                end
                v.once_count = v.once_count + 1