@@ -214,11 +214,14 @@ literals = mkPattern' match
214214 , return " = "
215215 , prettyPrintCpp' value
216216 ]
217− match (CppWhile cond sts) = fmap concat $ sequence
217+ match (CppWhile _ (CppBlock [])) = return []
218+ match (CppWhile cond sts@(CppBlock sts')) = fmap concat $ sequence
218219 [ return "while ("
219220 , prettyPrintCpp' cond
220221 , return ") "
221− , prettyPrintCpp' sts
222+ , prettyPrintCpp' $ if last sts' == CppContinue
223+ then CppBlock (init sts')
224+ else sts
222225 ]
223226 match (CppIfElse cond thens elses) = fmap concat $ sequence
224227 [ return "if ("
@@ -269,7 +272,7 @@ literals = mkPattern' match
269272 [ return "throw "
270273 , prettyPrintCpp' value
271274 ]
272− match CppContinue = return "continue;"
275+ match CppContinue = return "continue"
273276 match (CppComment [] cpp) = match cpp
274277 match (CppComment com cpp) = fmap concat $ sequence $
275278 [ return "\n"