--- orig.cpp	2016-12-02 16:49:09.000000000 +0100
+++ pcb_parser.cpp	2019-04-06 07:17:49.000000000 +0200
@@ -509,9 +509,17 @@
             break;
 
         case T_gr_arc:
+            m_board->Add( parseDRAWSEGMENT(), ADD_APPEND );
+            break;
         case T_gr_circle:
+            m_board->Add( parseDRAWSEGMENT(), ADD_APPEND );
+            break;
         case T_gr_curve:
+            m_board->Add( parseDRAWSEGMENT(), ADD_APPEND );
+            break;
         case T_gr_line:
+            m_board->Add( parseDRAWSEGMENT(), ADD_APPEND );
+            break;
         case T_gr_poly:
             m_board->Add( parseDRAWSEGMENT(), ADD_APPEND );
             break;
@@ -1941,9 +1949,18 @@
             break;
 
         case T_fp_arc:
+               EDGE_MODULE* em = parseEDGE_MODULE();
+            break;
+
         case T_fp_circle:
+               EDGE_MODULE* em = parseEDGE_MODULE();
+            break;
         case T_fp_curve:
+               EDGE_MODULE* em = parseEDGE_MODULE();
+            break;
         case T_fp_line:
+               EDGE_MODULE* em = parseEDGE_MODULE();
+            break;
         case T_fp_poly:
             {
                 EDGE_MODULE* em = parseEDGE_MODULE();
@@ -2701,9 +2718,18 @@
             switch( token )
             {
             default:
-            case T_none:   hatchStyle = CPolyLine::NO_HATCH;        break;
-            case T_edge:   hatchStyle = CPolyLine::DIAGONAL_EDGE;   break;
-            case T_full:   hatchStyle = CPolyLine::DIAGONAL_FULL;
+            case T_none:
+            	foo->SetFoo();
+            	hatchStyle = CPolyLine::NO_HATCH;
+            	        break;
+            case T_edge:
+            	foo->SetFoo();
+            	hatchStyle = CPolyLine::DIAGONAL_EDGE;
+            	   break;
+            case T_full:
+            	foo->SetFoo();
+            	hatchStyle = CPolyLine::DIAGONAL_FULL;
+            	   break;
             }
 
             hatchPitch = parseBoardUnits( "hatch pitch" );
