diff --git a/src/kernel_internals/typing/cabs2cil.ml b/src/kernel_internals/typing/cabs2cil.ml
index 4e618d714d3fd4976b3432c1ae018338825cf393..4e88edb64f0ffd77e8db0f1dc49f208b0e94263c 100644
--- a/src/kernel_internals/typing/cabs2cil.ml
+++ b/src/kernel_internals/typing/cabs2cil.ml
@@ -5417,8 +5417,9 @@ and makeCompType ghost (isstruct: bool)
     let addFieldInfo ~last:last_field (flds : fieldinfo list)
         (((n,ndt,a,cloc) : A.name), (widtho : A.expression option))
       : fieldinfo list =
+      let source = fst cloc in
       if sto <> NoStorage || inl then
-        Kernel.error ~once:true ~current:true "Storage or inline not allowed for fields";
+        Kernel.error ~once:true ~source "Storage or inline not allowed for fields";
       let allowZeroSizeArrays = true in
       let ftype, fattr =
         doType
@@ -5431,10 +5432,10 @@ and makeCompType ghost (isstruct: bool)
          struct C2 { struct C1 c1; int dummy; };
       *)
       if Cil.isFunctionType ftype then
-        Kernel.error ~current:true
+        Kernel.error ~source
           "field `%s' declared as a function" n
       else if Cil.has_flexible_array_member ftype && isstruct then
-        Kernel.error ~current:true
+        Kernel.error ~source
           "field `%s' declared with a type containing a flexible array member."
           n
       else if not (Cil.isCompleteType ~allowZeroSizeArrays ftype)
@@ -5445,14 +5446,14 @@ and makeCompType ghost (isstruct: bool)
             (* possible flexible array member; check if struct contains at least
                one other field *)
             if flds = [] then (* struct is empty *)
-              Kernel.error ~current:true
+              Kernel.error ~source
                 "flexible array member '%s' (type %a) \
                  not allowed in otherwise empty struct"
                 n Cil_printer.pp_typ ftype
             else (* valid flexible array member *) ()
           end
         | _ ->
-          Kernel.error ~current:true
+          Kernel.error ~source
             "field `%s' is declared with incomplete type %a"
             n Cil_printer.pp_typ ftype
       end;
@@ -5464,11 +5465,11 @@ and makeCompType ghost (isstruct: bool)
              | TInt (_, _) -> ()
              | TEnum _ -> ()
              | _ ->
-               Kernel.error ~once:true ~source:(fst cloc)
+               Kernel.error ~once:true ~source
                  "Base type for bitfield is not an integer type");
             match isIntegerConstant ghost w with
             | None ->
-              Kernel.error ~source:(fst cloc)
+              Kernel.error ~source
                 "bitfield width is not an integer constant";
               (* error  does not immediately stop execution.
                  Hence, we return a placeholder here.
@@ -5477,15 +5478,15 @@ and makeCompType ghost (isstruct: bool)
             | Some s as w ->
               begin
                 if s < 0 then
-                  Kernel.error ~source:(fst cloc) "negative bitfield width (%d)" s;
+                  Kernel.error ~source "negative bitfield width (%d)" s;
                 try
                   if s > Cil.bitsSizeOf ftype then
-                    Kernel.error ~source:(fst cloc)
+                    Kernel.error ~source
                       "bitfield width (%d) exceeds its type (%a, %d bits)"
                       s Cil_printer.pp_typ ftype (Cil.bitsSizeOf ftype)
                 with
                   SizeOfError _ ->
-                  Kernel.fatal ~source:(fst cloc)
+                  Kernel.fatal ~source
                     "Unable to compute size of %a" Cil_printer.pp_typ ftype
               end;
               let ftype =
diff --git a/tests/syntax/oracle/fam.res.oracle b/tests/syntax/oracle/fam.res.oracle
index 8ccf9f18f6f5ea030a3ff85f5e597a43aa74de04..cd389c848e28e89b9b19cbf7327dc2be09f0896a 100644
--- a/tests/syntax/oracle/fam.res.oracle
+++ b/tests/syntax/oracle/fam.res.oracle
@@ -1,7 +1,7 @@
 [kernel] Parsing tests/syntax/fam.i (no preprocessing)
 [kernel] tests/syntax/fam.i:16: User Error: 
   static initialization of flexible array members is an unsupported GNU extension
-[kernel] tests/syntax/fam.i:28: User Error: 
+[kernel] tests/syntax/fam.i:29: User Error: 
   field `b' is declared with incomplete type char []
 [kernel] tests/syntax/fam.i:28: User Error: 
   static initialization of flexible array members is an unsupported GNU extension
diff --git a/tests/syntax/oracle/flexible_array_member_invalid1.res.oracle b/tests/syntax/oracle/flexible_array_member_invalid1.res.oracle
index 1747cd9c2c39144829c5697e1846f8828161ae67..9946bb6acd85b78e0ab036576a152b97562e4371 100644
--- a/tests/syntax/oracle/flexible_array_member_invalid1.res.oracle
+++ b/tests/syntax/oracle/flexible_array_member_invalid1.res.oracle
@@ -1,5 +1,5 @@
 [kernel] Parsing tests/syntax/flexible_array_member_invalid1.i (no preprocessing)
-[kernel] tests/syntax/flexible_array_member_invalid1.i:7: User Error: 
+[kernel] tests/syntax/flexible_array_member_invalid1.i:8: User Error: 
   flexible array member 'data' (type char []) not allowed in otherwise empty struct
 [kernel] User Error: stopping on file "tests/syntax/flexible_array_member_invalid1.i" that has
   errors.
diff --git a/tests/syntax/oracle/flexible_array_member_invalid2.res.oracle b/tests/syntax/oracle/flexible_array_member_invalid2.res.oracle
index 08b2bbe1285519910ffd0194603ecffc25ea179d..99f1f24d88212f4b315c0b278fc9843752526173 100644
--- a/tests/syntax/oracle/flexible_array_member_invalid2.res.oracle
+++ b/tests/syntax/oracle/flexible_array_member_invalid2.res.oracle
@@ -1,5 +1,5 @@
 [kernel] Parsing tests/syntax/flexible_array_member_invalid2.i (no preprocessing)
-[kernel] tests/syntax/flexible_array_member_invalid2.i:7: User Error: 
+[kernel] tests/syntax/flexible_array_member_invalid2.i:9: User Error: 
   field `data' is declared with incomplete type char []
 [kernel] User Error: stopping on file "tests/syntax/flexible_array_member_invalid2.i" that has
   errors.
diff --git a/tests/syntax/oracle/flexible_array_member_invalid3.res.oracle b/tests/syntax/oracle/flexible_array_member_invalid3.res.oracle
index c7e88ab06296193f8a930b30f4ac9686c457763b..b344417d741e8e115408dae13758ce18d4b1a13d 100644
--- a/tests/syntax/oracle/flexible_array_member_invalid3.res.oracle
+++ b/tests/syntax/oracle/flexible_array_member_invalid3.res.oracle
@@ -1,5 +1,5 @@
 [kernel] Parsing tests/syntax/flexible_array_member_invalid3.i (no preprocessing)
-[kernel] tests/syntax/flexible_array_member_invalid3.i:8: User Error: 
+[kernel] tests/syntax/flexible_array_member_invalid3.i:10: User Error: 
   field `data' is declared with incomplete type char []
 [kernel] User Error: stopping on file "tests/syntax/flexible_array_member_invalid3.i" that has
   errors.
diff --git a/tests/syntax/oracle/flexible_array_member_invalid4.res.oracle b/tests/syntax/oracle/flexible_array_member_invalid4.res.oracle
index 238b92acd43a45da575a026a1ed434bdc0f90033..d2876944dca7cfac4bc276286000748b34f89d2d 100644
--- a/tests/syntax/oracle/flexible_array_member_invalid4.res.oracle
+++ b/tests/syntax/oracle/flexible_array_member_invalid4.res.oracle
@@ -1,5 +1,5 @@
 [kernel] Parsing tests/syntax/flexible_array_member_invalid4.i (no preprocessing)
-[kernel] tests/syntax/flexible_array_member_invalid4.i:7: User Error: 
+[kernel] tests/syntax/flexible_array_member_invalid4.i:9: User Error: 
   field `data' is declared with incomplete type char []
 [kernel] User Error: stopping on file "tests/syntax/flexible_array_member_invalid4.i" that has
   errors.
diff --git a/tests/syntax/oracle/flexible_array_member_invalid5.res.oracle b/tests/syntax/oracle/flexible_array_member_invalid5.res.oracle
index 8e1dca203f55c5b1536d845e7f3cb4826cac798d..bb1c0f48c0786337b8a291c5d22227dca656e281 100644
--- a/tests/syntax/oracle/flexible_array_member_invalid5.res.oracle
+++ b/tests/syntax/oracle/flexible_array_member_invalid5.res.oracle
@@ -1,5 +1,5 @@
 [kernel] Parsing tests/syntax/flexible_array_member_invalid5.i (no preprocessing)
-[kernel] tests/syntax/flexible_array_member_invalid5.i:13: User Error: 
+[kernel] tests/syntax/flexible_array_member_invalid5.i:15: User Error: 
   field `f' declared with a type containing a flexible array member.
 [kernel] User Error: stopping on file "tests/syntax/flexible_array_member_invalid5.i" that has
   errors.
diff --git a/tests/syntax/oracle/incomplete_struct_field.res.oracle b/tests/syntax/oracle/incomplete_struct_field.res.oracle
index 1fd54ec0cfd8ceb5a376b144f885cb2f48cc6043..893450fdd3c9ea83912a6b69431a42f8def2fdbc 100644
--- a/tests/syntax/oracle/incomplete_struct_field.res.oracle
+++ b/tests/syntax/oracle/incomplete_struct_field.res.oracle
@@ -1,7 +1,7 @@
 [kernel] Parsing tests/syntax/incomplete_struct_field.i (no preprocessing)
 [kernel] tests/syntax/incomplete_struct_field.i:5: User Error: 
   declaration of array of incomplete type 'struct _s`
-[kernel] tests/syntax/incomplete_struct_field.i:5: User Error: 
+[kernel] tests/syntax/incomplete_struct_field.i:7: User Error: 
   field `v' is declared with incomplete type struct _s [12]
 [kernel] tests/syntax/incomplete_struct_field.i:5: User Error: 
   type struct _s is circular
diff --git a/tests/syntax/oracle/struct_with_function_field_invalid.res.oracle b/tests/syntax/oracle/struct_with_function_field_invalid.res.oracle
index b54f3ab0368599cabc43276115e2a317bae3dfa8..53e414a962088f221e56cfc8d54ffc5c7c53eedb 100644
--- a/tests/syntax/oracle/struct_with_function_field_invalid.res.oracle
+++ b/tests/syntax/oracle/struct_with_function_field_invalid.res.oracle
@@ -1,5 +1,5 @@
 [kernel] Parsing tests/syntax/struct_with_function_field_invalid.i (no preprocessing)
-[kernel] tests/syntax/struct_with_function_field_invalid.i:7: User Error: 
+[kernel] tests/syntax/struct_with_function_field_invalid.i:8: User Error: 
   field `f' declared as a function
 [kernel] User Error: stopping on file "tests/syntax/struct_with_function_field_invalid.i" that has
   errors.
diff --git a/tests/value/oracle/empty_base.0.res.oracle b/tests/value/oracle/empty_base.0.res.oracle
index 0af48095560b9c93b62c891c7466ad21314f60a8..28a0b5e21ea980b8fd9891b1cde2b3d580e9cd31 100644
--- a/tests/value/oracle/empty_base.0.res.oracle
+++ b/tests/value/oracle/empty_base.0.res.oracle
@@ -5,7 +5,7 @@
   Too many initializers for structure
 [kernel] tests/value/empty_base.c:75: User Error: 
   field `z' declared with a type containing a flexible array member.
-[kernel] tests/value/empty_base.c:80: User Error: 
+[kernel] tests/value/empty_base.c:81: User Error: 
   field `f1' declared with a type containing a flexible array member.
 [kernel] User Error: stopping on file "tests/value/empty_base.c" that has errors. Add
   '-kernel-msg-key pp' for preprocessing command.