class Haml::Compiler

def push_silent(text, can_suppress = false)

does not output the result.
Evaluates `text` in the context of the scope object, but
def push_silent(text, can_suppress = false)
  flush_merged_text
  return if can_suppress && @options.suppress_eval?
  @precompiled << "#{resolve_newlines}#{text}\n"
  @output_line += text.count("\n") + 1
end