diff --git a/benchmarks/bugs/bug_elliptic.geo b/benchmarks/bugs/bug_elliptic.geo
new file mode 100644
index 0000000000000000000000000000000000000000..3710f5cc07d908a4a4780dad63bc34b58051ebba
--- /dev/null
+++ b/benchmarks/bugs/bug_elliptic.geo
@@ -0,0 +1,45 @@
+size = 0.005;
+Point(1) = {0, 0, 0, size};
+Point(2) = {0.0025, 0, 0, size};
+Point(3) = {0.016, 0, 0, size};
+Point(4) = {0.016, 0.015, 0, size};
+Point(5) = {0, 0.015, 0, size};
+Point(6) = {0, 0.0025, 0, size};
+Point(7) = {0.001767766953, 0.001767766953, 0, size};
+Point(8) = {0.016, 0.025, 0, size};
+Point(9) = {0, 0.025, 0, size};
+Line(1) = {2,3};
+Line(2) = {3,4};
+Line(3) = {4,5};
+Line(4) = {5,6};
+Line(5) = {7,4};
+Line(6) = {4,8};
+Line(7) = {8,9};
+Line(8) = {9,5};
+Circle(9) = {2,1,7};
+Circle(10) = {7,1,6};
+Line Loop(11) = {-2,-1,9,5};
+Plane Surface(12) = {11};
+Line Loop(13) = {4,-10,5,3};
+Plane Surface(14) = {13};
+Line Loop(15) = {-3,6,7,8};
+Plane Surface(16) = {15};
+Transfinite Line {1} = 15 Using Progression 1.1;
+Transfinite Line {4} = 15 Using Progression 0.9;
+Transfinite Line {5} = 15 Using Progression 1.15;
+Transfinite Line {9,2} = 11;
+Transfinite Line {10,3,7} = 10;
+Transfinite Line {6,8} = 6;
+
+//Elliptic Surface {12} = {7,4,3,2};
+Elliptic Surface {12} = {2,3,4,7};// aieieieie
+Elliptic Surface {14} = {6,7,4,5};
+Elliptic Surface {16} = {5,4,8,9};
+
+Recombine Surface {12,14,16};
+Physical Surface(1) = {-12,14,16};
+Physical Line(11) = {1};
+Physical Line(12) = {2,6};
+Physical Line(13) = {7};
+Physical Line(14) = {4,8};
+Physical Line(15) = {9,10};