Add test suite, fix a mountain of small errors.
diff --git a/generator/sections/gen-section-ccix-per.c b/generator/sections/gen-section-ccix-per.c
index a61983b..074fd0d 100644
--- a/generator/sections/gen-section-ccix-per.c
+++ b/generator/sections/gen-section-ccix-per.c
@@ -28,6 +28,10 @@
     UINT16* reserved = (UINT16*)(bytes + 14);
     *reserved = 0; //Reserved bytes 14-15.
 
+    //Set expected values.
+    UINT32* length = (UINT32*)bytes;
+    *length = size;
+
     //Set return values, exit.
     *location = bytes;
     return size;
diff --git a/generator/sections/gen-section-ia32x64.c b/generator/sections/gen-section-ia32x64.c
index 7412ca3..a9b41e4 100644
--- a/generator/sections/gen-section-ia32x64.c
+++ b/generator/sections/gen-section-ia32x64.c
@@ -75,25 +75,25 @@
     {
         //Cache
         case 0:
-            memcpy(guid, &gEfiIa32x64ErrorTypeCacheCheckGuid, sizeof(guid));
+            memcpy(guid, &gEfiIa32x64ErrorTypeCacheCheckGuid, sizeof(EFI_GUID));
             memset(error_structure + 30, 0, 34);
             break;
 
         //TLB
         case 1:
-            memcpy(guid, &gEfiIa32x64ErrorTypeTlbCheckGuid, sizeof(guid));
+            memcpy(guid, &gEfiIa32x64ErrorTypeTlbCheckGuid, sizeof(EFI_GUID));
             memset(error_structure + 30, 0, 34);
             break;
 
         //Bus
         case 2:
-            memcpy(guid, &gEfiIa32x64ErrorTypeBusCheckGuid, sizeof(guid));
+            memcpy(guid, &gEfiIa32x64ErrorTypeBusCheckGuid, sizeof(EFI_GUID));
             memset(error_structure + 35, 0, 29);
             break;
 
         //MS
         case 3:
-            memcpy(guid, &gEfiIa32x64ErrorTypeMsCheckGuid, sizeof(guid));
+            memcpy(guid, &gEfiIa32x64ErrorTypeMsCheckGuid, sizeof(EFI_GUID));
             memset(error_structure + 24, 0, 38);
             break;
     }
diff --git a/generator/sections/gen-section-pci-dev.c b/generator/sections/gen-section-pci-dev.c
index 1882d6c..f6a8bcc 100644
--- a/generator/sections/gen-section-pci-dev.c
+++ b/generator/sections/gen-section-pci-dev.c
@@ -27,6 +27,12 @@
     *validation &= 0b11111; //Validation 5-63
     for (int i=0; i<5; i++)
         *(bytes + 27 + i) = 0; //Bytes 11-15 of ID info.
+        
+    //Set expected values.
+    UINT32* memory_number_field = (UINT32*)(bytes + 32);
+    UINT32* io_number_field = (UINT32*)(bytes + 36);
+    *memory_number_field = num_memory_pairs;
+    *io_number_field = num_io_pairs;
 
     //Fix error status.
     create_valid_error_section(bytes + 8);