diff --git a/Parser/test-data/continued_lines/code.f b/Parser/test-data/continued_lines/code.f
deleted file mode 100644
index e95047cd2c8cdd17c585c77b90fd07d3a27a91c7..0000000000000000000000000000000000000000
--- a/Parser/test-data/continued_lines/code.f
+++ /dev/null
@@ -1,7 +0,0 @@
-
-  do concurrent(k = 1:num_ele, i = 0:po)
-    T(i,k,1) = 4 * THIRD * T(i,k,0)  -       THIRD * T(i,k,-1)       &
-      +   THIRD * 2 * dt * global_mass_inv(i,k) * f(i,k)
-  end do
-
-end
diff --git a/Parser/test-data/continued_lines/comments.f b/Parser/test-data/continued_lines/comments.f
deleted file mode 100644
index 6d01f93fbf9ab29a31b45197dee2afc61b6973f1..0000000000000000000000000000000000000000
--- a/Parser/test-data/continued_lines/comments.f
+++ /dev/null
@@ -1,35 +0,0 @@
-! xxxxx
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxxx
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx
-
-! xxxxx &
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx &
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxxx &
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx &
-! bla
-
-! xxxxx&
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx&
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxxx&
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx&
-! bla
-
-! xxxxx &
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx &
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxxx &
-! xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx xxxxx &
-x = 1
-
-!---------------------------------------------------------------------------------
-!> \brief Adds the left- and rightmost elements in an array to those on the &
-!>        nodes in the corresponding direction.
-!> \author Immo Huismann
-!>
-!> \details
-!> The spectral element method requires the assembly of the system, resulting in
-!> adding the values on the left and right side of an element boundary.
-!> As this program uses MPI for communication, the values at the ends of each
-!> nodes domain have to be communicated. This is done in this routine.
-
-end
diff --git a/Parser/test-data/continued_lines/pragma.f b/Parser/test-data/continued_lines/pragma.f
new file mode 100644
index 0000000000000000000000000000000000000000..d0a02421f4a5d8277e0933f7d9589fa882e813cd
--- /dev/null
+++ b/Parser/test-data/continued_lines/pragma.f
@@ -0,0 +1,22 @@
+! simple pragma
+
+!$omp bla
+
+! simple continued pragma
+
+!$omp do &
+more
+
+! correct continued pragma
+
+!$omp do&
+!$omp more
+
+!$omp do&
+!$omp&more
+
+!$omp do&
+!$omp&really&
+!$omp an&
+!$omp awful&
+!$omp&lot
\ No newline at end of file
diff --git a/Parser/test-data/continued_lines/pragmas.f b/Parser/test-data/continued_lines/pragmas.f
deleted file mode 100644
index c0d445376c3944d5268e664a616ba201cbd93009..0000000000000000000000000000000000000000
--- a/Parser/test-data/continued_lines/pragmas.f
+++ /dev/null
@@ -1,24 +0,0 @@
-!$omp  parallel default(none)                                       &
-!$omp& shared(T,r,f,x,global_mass_inv)                              &
-!$omp& firstprivate(mass_mat_diag,stiffness_mat)                    &
-!$omp& firstprivate(alpha,beta,lambda)                              &
-!$omp& firstprivate(po,num_ele,he,nt,dt,dt_out)                     &
-!$omp& firstprivate(my_rank,num_procs,communicator,RNP_MPI)         &
-!$omp& firstprivate(num_ele_total,left_process,right_process)       &
-!$omp& private(k,i,j,sum)                                           &
-!$omp& shared(time,time_out)
-
-!$omp  parallel default(none) &
-!$omp& shared(T,r,f,x,global_mass_inv) &
-!$omp& firstprivate(mass_mat_diag,stiffness_mat) &
-!$omp& firstprivate(alpha,beta,lambda) &
-!$omp& firstprivate(po,num_ele,he,nt,dt,dt_out) &
-!$omp& firstprivate(my_rank,num_procs,communicator,RNP_MPI) &
-!$omp& firstprivate(num_ele_total,left_process,right_process) &
-!$omp& private(k,i,j,sum) &
-!$omp& shared(time,time_out)
-
-!$omp end parallel
-!$omp end parallel
-
-end
diff --git a/Parser/test-data/continued_lines/simple.f b/Parser/test-data/continued_lines/simple.f
new file mode 100644
index 0000000000000000000000000000000000000000..ddfd250f51ab0a09672b144f50d85db380103f4f
--- /dev/null
+++ b/Parser/test-data/continued_lines/simple.f
@@ -0,0 +1,42 @@
+! normal continued line
+
+a = b &
++ c
+
+var&
+iable = "value"
+
+! continued line with comment
+
+a = b & ! some comment
++ c
+
+! continued line with blank line inbetween
+
+a = b &
+
++ c
+
+a = b &
+
+
++ c
+
+! continued line with comment line inbetween
+
+a = b &
+! some comment
++ c
+
+a = b &
+! some comment
+! more comment
++ c
+
+a = b &
+! comment, then space line
+
+! more comment
++ c
+
+end
diff --git a/Parser/test-data/continued_lines/strings.f b/Parser/test-data/continued_lines/strings.f
new file mode 100644
index 0000000000000000000000000000000000000000..cd582a851350c0490caf1b9a96716ce1ecb21a63
--- /dev/null
+++ b/Parser/test-data/continued_lines/strings.f
@@ -0,0 +1,21 @@
+a = "my&
+& string"
+
+a = 'my&
+& string'
+
+a = 'my&
+& string"
+
+! false positives
+a = 'my'&
+& string
+
+a = "my"&
+& string
+
+a = "my'&
+& string
+
+a = 'my"&
+& string
\ No newline at end of file
diff --git a/Parser/test/org/tud/forty/test/ContinuedLinesTest.java b/Parser/test/org/tud/forty/test/ContinuedLinesTest.java
index 2c57d442ef2431e7d26699ed92bce831db84a4d4..a4b9e493d86fe308d96bab1e68e88652433b39f3 100644
--- a/Parser/test/org/tud/forty/test/ContinuedLinesTest.java
+++ b/Parser/test/org/tud/forty/test/ContinuedLinesTest.java
@@ -1,21 +1,19 @@
 package org.tud.forty.test;
 
-import org.testng.annotations.DataProvider;
-import org.testng.annotations.Test;
-import org.tud.forty.ast.Root;
-
 import java.io.File;
 import java.util.Iterator;
+import org.testng.annotations.DataProvider;
+import org.testng.annotations.Test;
 
 public class ContinuedLinesTest extends TestBase {
 
-    @DataProvider(name = "continued_lines")
-    public static Iterator<Object[]> fortranContinuedLinesProvider() {
-        return ruleProvider("test-data/continued_lines");
-    }
+  @DataProvider(name = "continued_lines")
+  public static Iterator<Object[]> fortranContinuedLinesProvider() {
+    return ruleProvider("test-data/continued_lines");
+  }
 
-    @Test(dataProvider = "continued_lines", groups = {"parser"})
-    public void testContinuedLinesParser(File f) throws Exception {
-        testParse(f, false, false, false, false, Root.class);
-    }
+  @Test(dataProvider = "continued_lines", groups = {"parser"})
+  public void testContinuedLinesSanitize(File f) throws Exception {
+    testSanitize(f);
+  }
 }