aboutsummaryrefslogtreecommitdiffstats
path: root/cparser
diff options
context:
space:
mode:
authorBernhard Schommer <bernhardschommer@gmail.com>2016-08-29 11:59:31 +0200
committerBernhard Schommer <bernhardschommer@gmail.com>2016-08-29 11:59:31 +0200
commit5daf835c454c31dcf29b8b9832d9050cf5822516 (patch)
tree572877483685ab5406ee82a5c7b1181d0e932e1f /cparser
parent55fa31e474c0f039330d6325ab33bbd86522d084 (diff)
downloadcompcert-5daf835c454c31dcf29b8b9832d9050cf5822516.tar.gz
compcert-5daf835c454c31dcf29b8b9832d9050cf5822516.zip
Fixed spelling mistake and unnamed fields.
The previous fix for duplicated members was also triggered for unnamed members. Bug 19665
Diffstat (limited to 'cparser')
-rw-r--r--cparser/Elab.ml9
1 files changed, 6 insertions, 3 deletions
diff --git a/cparser/Elab.ml b/cparser/Elab.ml
index 1039a91d..a5032292 100644
--- a/cparser/Elab.ml
+++ b/cparser/Elab.ml
@@ -803,9 +803,12 @@ and elab_struct_or_union_info keep_ty kind loc env members attrs =
let m = List.flatten m in
ignore (List.fold_left (fun acc fld ->
let n = fld.fld_name in
- if List.exists ((=) n) acc then
- error loc "duplicate memeber '%s'" n;
- n::acc) [] m);
+ if n <> "" then begin
+ if List.exists ((=) n) acc then
+ error loc "duplicate member '%s'" n;
+ n::acc
+ end else
+ acc) [] m);
(* Check for incomplete types *)
let rec check_incomplete = function
| [] -> ()