Skip to content
Snippets Groups Projects
Commit 2f1c5a53 authored by Allan Blanchard's avatar Allan Blanchard
Browse files

[Kernel] CabsVisit does not erase ghost parameters anymore

parent 9edc0b62
No related branches found
No related tags found
No related merge requests found
......@@ -193,14 +193,17 @@ and childrenDeclType isfundef vis dt =
let al' = mapNoCopy (childrenAttribute vis) al in
let dt1' = visitCabsDeclType vis isfundef dt1 in
if al' != al || dt1' != dt1 then PTR(al', dt1') else dt
| PROTO (dt1, snl,_, b) ->
| PROTO (dt1, snl, gsnl, b) ->
(* Do not propagate isfundef further *)
let dt1' = visitCabsDeclType vis false dt1 in
let _ = vis#vEnterScope () in
let snl' = mapNoCopy (childrenSingleName vis NVar) snl in
let gsnl' = mapNoCopy (childrenSingleName vis NVar) gsnl in
(* Exit the scope only if not in a function definition *)
let _ = if not isfundef then vis#vExitScope () in
if dt1' != dt1 || snl' != snl then PROTO(dt1', snl',[] , b) else dt
if dt1' != dt1 || snl' != snl || gsnl' != gsnl then
PROTO(dt1', snl', gsnl' , b)
else dt
and childrenNameGroup vis (kind: nameKind) ((s, nl) as input) =
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment