X-Git-Url: https://git.hcoop.net/bpt/coccinelle.git/blobdiff_plain/190f1acf3b0fa9403bea541654465a6a00bf3693..7fe62b653dbe13c8fc74c58c3ca4b8af523c1637:/parsing_cocci/visitor_ast0.ml diff --git a/parsing_cocci/visitor_ast0.ml b/parsing_cocci/visitor_ast0.ml index 64f73d4..91066d6 100644 --- a/parsing_cocci/visitor_ast0.ml +++ b/parsing_cocci/visitor_ast0.ml @@ -141,9 +141,9 @@ let visitor mode bind option_default (match Ast0.unwrap i with Ast0.Id(name) -> let (n,name) = string_mcode name in (n,Ast0.Id(name)) - | Ast0.MetaId(name,constraints,pure) -> + | Ast0.MetaId(name,constraints,seed,pure) -> let (n,name) = meta_mcode name in - (n,Ast0.MetaId(name,constraints,pure)) + (n,Ast0.MetaId(name,constraints,seed,pure)) | Ast0.MetaFunc(name,constraints,pure) -> let (n,name) = meta_mcode name in (n,Ast0.MetaFunc(name,constraints,pure)) @@ -251,6 +251,12 @@ let visitor mode bind option_default | Ast0.TypeExp(ty) -> let (ty_n,ty) = typeC ty in (ty_n,Ast0.TypeExp(ty)) + | Ast0.Constructor(lp,ty,rp,init) -> + let (lp_n,lp) = string_mcode lp in + let (ty_n,ty) = typeC ty in + let (rp_n,rp) = string_mcode rp in + let (init_n,init) = initialiser init in + (multibind [lp_n;ty_n;rp_n;init_n], Ast0.Constructor(lp,ty,rp,init)) | Ast0.MetaErr(name,constraints,pure) -> let (name_n,name) = meta_mcode name in (name_n,Ast0.MetaErr(name,constraints,pure)) @@ -460,6 +466,9 @@ let visitor mode bind option_default Ast0.MetaInit(name,pure) -> let (name_n,name) = meta_mcode name in (name_n,Ast0.MetaInit(name,pure)) + | Ast0.MetaInitList(name,lenname,pure) -> + let (name_n,name) = meta_mcode name in + (name_n,Ast0.MetaInitList(name,lenname,pure)) | Ast0.InitExpr(exp) -> let (exp_n,exp) = expression exp in (exp_n,Ast0.InitExpr(exp)) @@ -581,7 +590,7 @@ let visitor mode bind option_default (multibind [lbrace_n;body_n;rbrace_n], Ast0.Seq(lbrace,body,rbrace)) | Ast0.ExprStatement(exp,sem) -> - let (exp_n,exp) = expression exp in + let (exp_n,exp) = get_option expression exp in let (sem_n,sem) = string_mcode sem in (bind exp_n sem_n, Ast0.ExprStatement(exp,sem)) | Ast0.IfThen(iff,lp,exp,rp,branch1,aft) -> @@ -836,12 +845,15 @@ let visitor mode bind option_default let (old_file_n,old_file) = string_mcode old_file in let (new_file_n,new_file) = string_mcode new_file in (bind old_file_n new_file_n,Ast0.FILEINFO(old_file,new_file)) - | Ast0.DECL(statement_dots) -> + | Ast0.NONDECL(statement_dots) -> let (n,statement_dots) = statement statement_dots in - (n,Ast0.DECL(statement_dots)) + (n,Ast0.NONDECL(statement_dots)) | Ast0.CODE(stmt_dots) -> let (stmt_dots_n,stmt_dots) = statement_dots stmt_dots in (stmt_dots_n, Ast0.CODE(stmt_dots)) + | Ast0.TOPCODE(stmt_dots) -> + let (stmt_dots_n,stmt_dots) = statement_dots stmt_dots in + (stmt_dots_n, Ast0.TOPCODE(stmt_dots)) | Ast0.ERRORWORDS(exps) -> let (n,exps) = map_split_bind expression exps in (n, Ast0.ERRORWORDS(exps))