diff --git a/library/error.c b/library/error.c
index 1eac108..c6c9838 100644
--- a/library/error.c
+++ b/library/error.c
@@ -198,6 +198,7 @@
 
         // High level error codes
         //
+        // BEGIN generated code
 #if defined(POLARSSL_CIPHER_C)
         if( use_ret == -(POLARSSL_ERR_CIPHER_FEATURE_UNAVAILABLE) )
             snprintf( buf, buflen, "CIPHER - The selected feature is not available" );
@@ -483,6 +484,7 @@
         if( use_ret == -(POLARSSL_ERR_X509_FILE_IO_ERROR) )
             snprintf( buf, buflen, "X509 - Read/write of file failed" );
 #endif /* POLARSSL_X509_USE,X509_CREATE_C */
+        // END generated code
 
         if( strlen( buf ) == 0 )
             snprintf( buf, buflen, "UNKNOWN ERROR CODE (%04X)", use_ret );
@@ -511,6 +513,7 @@
 
     // Low level error codes
     //
+    // BEGIN generated code
 #if defined(POLARSSL_AES_C)
     if( use_ret == -(POLARSSL_ERR_AES_INVALID_KEY_LENGTH) )
         snprintf( buf, buflen, "AES - Invalid key length" );
@@ -710,6 +713,7 @@
     if( use_ret == -(POLARSSL_ERR_XTEA_INVALID_INPUT_LENGTH) )
         snprintf( buf, buflen, "XTEA - The data input has an invalid length" );
 #endif /* POLARSSL_XTEA_C */
+    // END generated code
 
     if( strlen( buf ) != 0 )
         return;
diff --git a/scripts/data_files/error.fmt b/scripts/data_files/error.fmt
index 30ee257..413682f 100644
--- a/scripts/data_files/error.fmt
+++ b/scripts/data_files/error.fmt
@@ -63,7 +63,10 @@
 
         // High level error codes
         //
+        // BEGIN generated code
 HIGH_LEVEL_CODE_CHECKS
+        // END generated code
+
         if( strlen( buf ) == 0 )
             snprintf( buf, buflen, "UNKNOWN ERROR CODE (%04X)", use_ret );
     }
@@ -91,7 +94,10 @@
 
     // Low level error codes
     //
+    // BEGIN generated code
 LOW_LEVEL_CODE_CHECKS
+    // END generated code
+
     if( strlen( buf ) != 0 )
         return;
 
diff --git a/scripts/generate_errors.pl b/scripts/generate_errors.pl
index 5631ae8..1bea6e6 100755
--- a/scripts/generate_errors.pl
+++ b/scripts/generate_errors.pl
@@ -135,11 +135,11 @@
 
 if ($ll_old_define ne "")
 {
-    $ll_code_check .= "#endif /* POLARSSL_${ll_old_define}_C */\n\n";
+    $ll_code_check .= "#endif /* POLARSSL_${ll_old_define}_C */\n";
 }
 if ($hl_old_define ne "")
 {
-    $hl_code_check .= "#endif /* POLARSSL_${hl_old_define}_C */\n\n";
+    $hl_code_check .= "#endif /* POLARSSL_${hl_old_define}_C */\n";
 }
 
 $error_format =~ s/HEADER_INCLUDED\n/$headers/g;
