On Sat, 2020-08-01 at 22:36 +0200, Julia Lawall wrote: > > On Sun, 26 Jul 2020, Jaskaran Singh wrote: > > > This patch series aims to add support for meta attributes in SmPL. > > Currently, only meta attributes in context and minus code are > > supported. > > > > Changes include adding the MetaAttribute and MetaAttributeDecl > > constructors to > > the SmPL ASTs and the MetaAttributeVal constructor to the C AST. > > > > Two test cases are included for detecting and removing meta > > attributes. > > Applied. > > Is this the end of atributes? >
There are a few more patches, but not as wide as this. Cheers, Jaskaran. > julia > > > Jaskaran Singh (43): > > parsing_cocci: ast0_cocci: Add MetaAttribute & > > MetaAttributeDecl > > parsing_cocci: parser: Parse meta attributes and metaattr > > decls > > parsing_cocci: parse_cocci: Reflect MetaAttribute & > > MetaAttributeDecl > > parsing_cocci: ast_cocci: Add MetaAttribute & > > MetaAttributeDecl > > parsing_cocci: iso_pattern: Reflect MetaAttribute & > > MetaAttributeDecl > > parsing_c: unparse_hrule: Reflect MetaAttribute & > > MetaAttributeDecl > > parsing_cocci: pretty_print_cocci: Reflect MetaAttribute & > > MetaAttributeDecl > > ocaml: coccilib: Reflect MetaAttribute & MetaAttributeDecl > > ocaml: yes_prepare_ocamlcocci: Reflect MetaAttribute & > > MetaAttributeDecl > > parsing_c: ast_c: Add MetaAttributeVal > > parsing_c: unparse_hrule: Reflect MetaAttributeVal > > engine: cocci_vs_c: Reflect MetaAttributeVal > > engine: pattern_c: Reflect MetaAttributeVal > > engine: pretty_print_engine: Add MetaAttributeVal > > ocaml: coccilib: Reflect MetaAttributeVal > > ocaml: ocamlcocci_aux: Reflect MetaAttributeVal > > ocaml: run_ocamlcocci: Reflect MetaAttributeVal > > python: pycocci_aux: Reflect MetaAttributeVal > > parsing_cocci: visitor_ast0: Reflect MetaAttribute > > parsing_cocci: check_meta: Reflect MetaAttribute > > parsing_cocci: adjust_pragmas: Reflect MetaAttribute > > parsing_cocci: context_neg: Reflect MetaAttribute > > parsing_cocci: compute_lines: Reflect MetaAttribute > > parsing_cocci: iso_pattern: Reflect MetaAttribute > > parsing_cocci: function_prototypes: Reflect MetaAttribute > > parsing_cocci: arity: Reflect MetaAttribute > > parsing_cocci: unitary_ast0: Reflect MetaAttribute > > parsing_cocci: unparse_ast0: Reflect MetaAttribute > > parsing_cocci: ast0toast: Reflect MetaAttribute > > parsing_cocci: visitor_ast: Reflect MetaAttribute > > parsing_cocci: cleanup_rules: Reflect MetaAttribute > > parsing_cocci: free_vars: Reflect MetaAttribute > > parsing_cocci: get_constants: Reflect MetaAttribute > > parsing_cocci: get_constants2: Reflect MetaAttribute > > parsing_cocci: index: Reflect MetaAttribute > > parsing_cocci: pretty_print_cocci: Reflect MetaAttribute > > parsing_cocci: safe_for_multi_decls: Reflect MetaAttribute > > parsing_cocci: unify_ast: Reflect MetaAttribute > > parsing_c: unparse_cocci: Reflect MetaAttribute > > engine: cocci_vs_c: Reflect MetaAttribute > > tools: spgen: Reflect MetaAttribute > > tests: Add test case to match meta attribute > > tests: Add test case to remove a meta attribute > > > > engine/cocci_vs_c.ml | 23 ++++++++++++++--- > > engine/pattern_c.ml | 6 ++++ > > engine/pretty_print_engine.ml | 1 > > ocaml/coccilib.ml | 1 > > ocaml/coccilib.mli | 7 +++++ > > ocaml/ocamlcocci_aux.ml | 2 + > > ocaml/run_ocamlcocci.ml | 1 > > ocaml/yes_prepare_ocamlcocci.ml | 1 > > parsing_c/ast_c.ml | 1 > > parsing_c/ast_c.mli | 1 > > parsing_c/lib_parsing_c.ml | 3 ++ > > parsing_c/lib_parsing_c.mli | 3 ++ > > parsing_c/pretty_print_c.ml | 12 ++++++++ > > parsing_c/pretty_print_c.mli | 5 +++ > > parsing_c/unparse_cocci.ml | 6 ++++ > > parsing_c/unparse_hrule.ml | 5 +++ > > parsing_cocci/adjust_pragmas.ml | 3 ++ > > parsing_cocci/arity.ml | 29 ++++++++++++++------- > > parsing_cocci/ast0_cocci.ml | 1 > > parsing_cocci/ast0_cocci.mli | 1 > > parsing_cocci/ast0toast.ml | 4 ++ > > parsing_cocci/ast_cocci.ml | 3 ++ > > parsing_cocci/ast_cocci.mli | 2 + > > parsing_cocci/check_meta.ml | 27 ++++++++++++++----- > > parsing_cocci/cleanup_rules.ml | 10 ++++++- > > parsing_cocci/compute_lines.ml | 14 ++++++---- > > parsing_cocci/context_neg.ml | 18 ++++++++----- > > parsing_cocci/data.ml | 1 > > parsing_cocci/data.mli | 1 > > parsing_cocci/free_vars.ml | 28 ++++++++++++++++++-- > > parsing_cocci/function_prototypes.ml | 10 ++++++- > > parsing_cocci/get_constants.ml | 7 ++++- > > parsing_cocci/get_constants2.ml | 9 +++--- > > parsing_cocci/index.ml | 3 +- > > parsing_cocci/iso_pattern.ml | 46 > > +++++++++++++++++++++++++++++----- > > parsing_cocci/lexer_cocci.mll | 12 ++++++++ > > parsing_cocci/parse_aux.ml | 4 ++ > > parsing_cocci/parse_cocci.ml | 11 ++++++-- > > parsing_cocci/parser_cocci_menhir.mly | 25 ++++++++++++------ > > parsing_cocci/pretty_print_cocci.ml | 3 ++ > > parsing_cocci/safe_for_multi_decls.ml | 1 > > parsing_cocci/unify_ast.ml | 2 + > > parsing_cocci/unitary_ast0.ml | 8 +++++ > > parsing_cocci/unparse_ast0.ml | 1 > > parsing_cocci/visitor_ast.ml | 7 +++-- > > parsing_cocci/visitor_ast0.ml | 5 ++- > > python/pycocci_aux.ml | 2 + > > tests/metaattr.c | 5 +++ > > tests/metaattr.cocci | 9 ++++++ > > tests/metaattr.res | 5 +++ > > tests/remove_metaattr.c | 5 +++ > > tests/remove_metaattr.cocci | 9 ++++++ > > tests/remove_metaattr.res | 5 +++ > > tools/spgen/source/meta_variable.ml | 8 +++++ > > 54 files changed, 357 insertions(+), 65 deletions(-) > > > > > > _______________________________________________ Cocci mailing list Cocci@systeme.lip6.fr https://systeme.lip6.fr/mailman/listinfo/cocci