diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,8 @@
+# Floskell 0.10.1 (2019-05-25)
+
+* Fix for broken off-side rule with multi-line lists
+* Fix for increasing comment indentation before instance declarations
+
 # Floskell 0.10.0 (2019-05-03)
 
 * Updated to haskell-src-exts-1.21.0, with support for `DerivingVia` and `TypeInType`
diff --git a/TEST.md b/TEST.md
--- a/TEST.md
+++ b/TEST.md
@@ -773,6 +773,18 @@
     else that
 ```
 
+Lists must not suppress onside.
+
+``` haskell
+foo = case x of
+  [ y -- comment
+    , z] -> bar
+
+foo = do
+  [ x -- comment
+    , y ]
+```
+
 ## Comments
 
 Don't be too eager in assigning comments to the following AST node.
@@ -795,6 +807,18 @@
                 -- comments
 -- block
 -- two
+```
+
+... even when haskell-src-exts has weird column span info.
+
+``` haskell
+module Main where
+
+-- comment
+instance Foo Bar where
+  foo = undefined
+
+bar = undefined
 ```
 
 Only comments.
diff --git a/floskell.cabal b/floskell.cabal
--- a/floskell.cabal
+++ b/floskell.cabal
@@ -1,5 +1,5 @@
 name:                floskell
-version:             0.10.0
+version:             0.10.1
 synopsis:            A flexible Haskell source code pretty printer
 description:         A flexible Haskell source code pretty printer.
                      .
diff --git a/src/Floskell/Pretty.hs b/src/Floskell/Pretty.hs
--- a/src/Floskell/Pretty.hs
+++ b/src/Floskell/Pretty.hs
@@ -146,7 +146,7 @@
 printComment :: Int -> Comment -> Printer ()
 printComment correction Comment{..} = do
     col <- getNextColumn
-    let padding = max 0 $ srcSpanStartColumn commentSpan + correction - col
+    let padding = max 0 $ srcSpanStartColumn commentSpan + correction - col - 1
     case commentType of
         PreprocessorDirective -> do
             nl <- gets psNewline
@@ -186,7 +186,10 @@
     when (loc == After && not nl && notSameLine firstComment) newline
 
     col <- getNextColumn
-    forM_ comments $ printComment (col - srcSpanEndColumn ssi)
+    let correction = case loc of
+            Before -> col - srcSpanStartColumn ssi + 1
+            After -> col - srcSpanEndColumn ssi + 1
+    forM_ comments $ printComment correction
 
     -- Write newline before restoring onside indent.
     eol <- gets psEolComment
@@ -282,11 +285,13 @@
             printComments' Before x
             cut . onside $ prettyPrint x
             printComments After x
-            forM_ xs' $ \x' -> do
-                printComments Before x'
-                column sepCol $ operatorV ctx sep
-                cut . onside $ prettyPrint x'
-                printComments After x'
+        -- `column sepCol` must not be within `column itemCol`, or the
+        -- former can suppress onside for the latter.
+        forM_ xs' $ \x' -> do
+            column itemCol $ printComments Before x'
+            column sepCol $ operatorV ctx sep
+            column itemCol $ cut . onside $ prettyPrint x'
+            column itemCol $ printComments After x'
 
 listH :: (Annotated ast, Pretty ast)
       => LayoutContext
@@ -635,7 +640,7 @@
 
     vertical = do
         pretty fn
-        withIndent cfgIndentApp $ linedOnside args
+        withIndent cfgIndentApp $ lined args
 
 prettyInfixApp
     :: (Annotated ast, Pretty ast, Annotated op, HSE.Pretty (op NodeInfo))
diff --git a/src/Floskell/Printers.hs b/src/Floskell/Printers.hs
--- a/src/Floskell/Printers.hs
+++ b/src/Floskell/Printers.hs
@@ -295,9 +295,7 @@
 aligned :: Printer a -> Printer a
 aligned p = do
     col <- getNextColumn
-    column col $ do
-        modify $ \s -> s { psOnside = 0 }
-        p
+    column col p
 
 indented :: Printer a -> Printer a
 indented p = do
diff --git a/stack.yaml b/stack.yaml
--- a/stack.yaml
+++ b/stack.yaml
@@ -1,4 +1,4 @@
-resolver: lts-13.6
+resolver: lts-13.22
 packages:
 - '.'
 extra-deps:
