Release coccinelle-0.1.4
authorCoccinelle <cocci@diku.dk>
Sun, 3 Oct 2010 11:57:33 +0000 (13:57 +0200)
committerRene Rydhof Hansen <rrh@cs.aau.dk>
Sun, 3 Oct 2010 11:57:33 +0000 (13:57 +0200)
commitfaf9a90c4f9e1e85931cb6b01de660587416eb97
treeba4e4fbc313816cf8c862f3e815dd064c0e2eed0
parent91eba41f0f6608eba3499d37eeaf609f7060fffe
Release coccinelle-0.1.4

** Language:
   - long long added to SmPL

** Documentation:
   - add grammar reference and spatch command line options reference

** Features:
   - can match patterns of the form unsigned T or signed T, where T is a
     metavariable
   - dropped the sizeof_parens isomorphism, which was made redundant by the
     paren isomorphism
   - simple rule generation

** Bugfix:
   - trailing , ; and ) no longer left on a line by themselves
   - better treatment of error exit when the searched for code matches the
     error exit condition.
   - fix incorrect treatment of parentheses in test_exps that could allow +
     code to be added twice
   - don't ask whether iterator names and declarer names should be declared as
     metavariables.
   - slightly better support for expression list metavariables.
   - short and long allowed for array index types in SmPL
   - more restrictions on type inference for pointer arithmetic in SmPL
   - allow isomorphisms to apply when + code is anywhere within all - terms
   - changed order of printing const and volatile
   - allow  eg ... <... in plus code
   - better formatting of generated if/while/etc. code
   - better parse error reporting when the problem is at the end of the file

** Internals:
   - isomorphisms don't apply under signed/unsigned, to prevent the creation
     of things like unsigned signed int.  Need a better solution for this.
280 files changed:
.#Makefile.1.117 [new file with mode: 0644]
.#cocci.ml.1.290 [deleted file]
.cvsignore [deleted file]
.depend
.project [deleted file]
.subdirs [new file with mode: 0644]
Makefile
changes.txt
cocci.ml
cocci.mli
commitmsg
commons/.cvsignore [deleted file]
commons/.depend
commons/Makefile
commons/common.ml
copyright.txt
ctl/.#ctl_engine.ml.1.185 [deleted file]
ctl/.#ctl_engine.ml.1.187 [deleted file]
ctl/.cvsignore [deleted file]
ctl/.depend
ctl/Makefile
ctl/ast_ctl.ml
ctl/ctl_engine.ml
ctl/flag_ctl.ml
ctl/pretty_print_ctl.ml
ctl/test_ctl.ml
ctl/wrapper_ctl.ml
docs/grammar/Makefile [new file with mode: 0644]
docs/grammar/cocci_syntax.tex [new file with mode: 0644]
docs/grammar/examples.tex [new file with mode: 0644]
docs/grammar/grammar.tex [new file with mode: 0644]
docs/options.pdf [new file with mode: 0644]
docs/options.tex [new file with mode: 0644]
docs/spatch.1 [new file with mode: 0644]
engine/.#Makefile.1.49 [deleted file]
engine/.#Makefile.1.50 [deleted file]
engine/.#asttoctl2.ml.1.144 [deleted file]
engine/.#asttoctl2.ml.1.145 [deleted file]
engine/.#asttoctl2.ml.1.147 [deleted file]
engine/.#c_vs_c.ml.1.9 [deleted file]
engine/.#check_reachability.ml.1.18 [deleted file]
engine/.#ctlcocci_integration.ml.1.116 [deleted file]
engine/.#postprocess_transinfo.ml.1.12 [deleted file]
engine/.#pretty_print_engine.ml.1.42 [deleted file]
engine/.cvsignore [deleted file]
engine/.depend
engine/Makefile
engine/asttoctl.ml
engine/asttoctl2.ml
engine/asttomember.ml
engine/c_vs_c.ml
engine/check_exhaustive_pattern.ml
engine/check_reachability.ml
engine/cocci_vs_c.ml
engine/ctlcocci_integration.ml
engine/ctltotex.ml
engine/flag_engine.ml [moved from ctl/.#flag_ctl.ml.1.12 with 66% similarity]
engine/flag_matcher.ml [moved from ctl/.#flag_ctl.ml.1.13 with 65% similarity]
engine/isomorphisms_c_c.ml
engine/lib_engine.ml
engine/lib_matcher_c.ml
engine/main.ml
engine/pattern_c.ml
engine/postprocess_transinfo.ml
engine/pretty_print_engine.ml
engine/sgrep.ml
engine/transformation_c.ml
extra/.cvsignore [deleted file]
extra/.depend
extra/Makefile
flag_cocci.ml
globals/.#config.ml.1.2 [deleted file]
globals/.cvsignore [deleted file]
globals/Makefile
globals/config.ml
globals/flag.ml
main.ml
menhirlib/.cvsignore [deleted file]
menhirlib/Makefile
parsing_c/.cvsignore [deleted file]
parsing_c/.depend
parsing_c/Makefile
parsing_c/ast_c.ml
parsing_c/copyright.txt
parsing_c/cpp_ast_c.ml
parsing_c/orig.mly [new file with mode: 0644]
parsing_c/parsing_hacks.ml
parsing_c/pretty_print_c.ml
parsing_c/pretty_print_c.mli
parsing_c/type_annoter_c.ml
parsing_c/unparse_c.ml
parsing_c/unparse_cocci.ml
parsing_c/unparse_cocci.mli
parsing_c/unparse_hrule.ml
parsing_c/unparse_hrule.mli
parsing_c/visitor_c.ml
parsing_c/visitor_c.mli
parsing_cocci/.#arity.ml.1.81 [deleted file]
parsing_cocci/.#arity.ml.1.82 [deleted file]
parsing_cocci/.#ast0_cocci.ml.1.105 [deleted file]
parsing_cocci/.#ast0_cocci.ml.1.106 [deleted file]
parsing_cocci/.#ast0_cocci.ml.1.107 [deleted file]
parsing_cocci/.#ast0toast.ml.1.132 [deleted file]
parsing_cocci/.#ast0toast.ml.1.133 [deleted file]
parsing_cocci/.#ast_cocci.ml.1.142 [deleted file]
parsing_cocci/.#ast_cocci.ml.1.143 [deleted file]
parsing_cocci/.#check_meta.ml.1.79 [deleted file]
parsing_cocci/.#check_meta.ml.1.80 [deleted file]
parsing_cocci/.#compute_lines.ml.1.85 [deleted file]
parsing_cocci/.#context_neg.ml.1.95 [deleted file]
parsing_cocci/.#context_neg.ml.1.96 [deleted file]
parsing_cocci/.#context_neg.ml.1.97 [deleted file]
parsing_cocci/.#disjdistr.ml.1.20 [deleted file]
parsing_cocci/.#index.ml.1.54 [deleted file]
parsing_cocci/.#insert_plus.ml.1.68 [deleted file]
parsing_cocci/.#insert_plus.ml.1.69 [deleted file]
parsing_cocci/.#iso_pattern.ml.1.136 [deleted file]
parsing_cocci/.#iso_pattern.ml.1.137 [deleted file]
parsing_cocci/.#iso_pattern.ml.1.138 [deleted file]
parsing_cocci/.#iso_pattern.ml.1.144 [deleted file]
parsing_cocci/.#lexer_cocci.mll.1.80 [deleted file]
parsing_cocci/.#parse_aux.ml.1.23 [deleted file]
parsing_cocci/.#parse_cocci.ml.1.162 [deleted file]
parsing_cocci/.#parse_cocci.ml.1.163 [deleted file]
parsing_cocci/.#parse_cocci.ml.1.164 [deleted file]
parsing_cocci/.#parser_cocci_menhir.mly.1.153 [deleted file]
parsing_cocci/.#parser_cocci_menhir.mly.1.155 [deleted file]
parsing_cocci/.#parser_cocci_menhir.mly.1.156 [deleted file]
parsing_cocci/.#pretty_print_cocci.ml.1.127 [deleted file]
parsing_cocci/.#pretty_print_cocci.ml.1.128 [deleted file]
parsing_cocci/.#single_statement.ml.1.51 [deleted file]
parsing_cocci/.#test_exps.ml.1.3 [deleted file]
parsing_cocci/.#type_infer.ml.1.54 [deleted file]
parsing_cocci/.#type_infer.ml.1.55 [deleted file]
parsing_cocci/.#unify_ast.ml.1.70 [deleted file]
parsing_cocci/.#unitary_ast0.ml.1.28 [deleted file]
parsing_cocci/.#unitary_ast0.ml.1.29 [deleted file]
parsing_cocci/.#unparse_ast0.ml.1.107 [deleted file]
parsing_cocci/.#unparse_ast0.ml.1.108 [deleted file]
parsing_cocci/.#unparse_ast0.ml.1.109 [deleted file]
parsing_cocci/.#visitor_ast.ml.1.89 [deleted file]
parsing_cocci/.#visitor_ast.ml.1.90 [deleted file]
parsing_cocci/.#visitor_ast0.ml.1.79 [deleted file]
parsing_cocci/.#visitor_ast0.ml.1.80 [deleted file]
parsing_cocci/.#visitor_ast0.ml.1.81 [deleted file]
parsing_cocci/.cvsignore [deleted file]
parsing_cocci/.depend
parsing_cocci/Makefile
parsing_cocci/arity.ml
parsing_cocci/ast0_cocci.ml
parsing_cocci/ast0_cocci.mli
parsing_cocci/ast0toast.ml
parsing_cocci/ast0toast.mli
parsing_cocci/ast_cocci.ml
parsing_cocci/ast_cocci.mli
parsing_cocci/check_meta.ml
parsing_cocci/comm_assoc.ml
parsing_cocci/compute_lines.ml
parsing_cocci/context_neg.ml
parsing_cocci/data.ml
parsing_cocci/data.mli
parsing_cocci/disjdistr.ml
parsing_cocci/flag_parsing_cocci.ml
parsing_cocci/free_vars.ml
parsing_cocci/free_vars.mli
parsing_cocci/function_prototypes.ml
parsing_cocci/function_prototypes.mli
parsing_cocci/get_constants.ml
parsing_cocci/get_constants2.ml
parsing_cocci/index.ml
parsing_cocci/insert_plus.ml
parsing_cocci/insert_plus.mli
parsing_cocci/iso_compile.ml
parsing_cocci/iso_pattern.ml
parsing_cocci/lexer_cocci.mll
parsing_cocci/lexer_script.mll
parsing_cocci/main.ml
parsing_cocci/merge.ml
parsing_cocci/parse_aux.ml
parsing_cocci/parse_cocci.ml
parsing_cocci/parse_cocci.mli
parsing_cocci/parser_cocci.mly
parsing_cocci/parser_cocci_menhir.ml
parsing_cocci/parser_cocci_menhir.mli
parsing_cocci/parser_cocci_menhir.mly
parsing_cocci/plus.ml
parsing_cocci/pretty_print_cocci.ml
parsing_cocci/semantic_cocci.ml
parsing_cocci/simple_assignments.ml
parsing_cocci/single_statement.ml
parsing_cocci/test_exps.ml
parsing_cocci/top_level.ml
parsing_cocci/type_cocci.ml
parsing_cocci/type_cocci.mli
parsing_cocci/type_infer.ml
parsing_cocci/unify_ast.ml
parsing_cocci/unitary_ast0.ml
parsing_cocci/unitary_ast0.mli
parsing_cocci/unparse_ast0.ml
parsing_cocci/visitor_ast.ml
parsing_cocci/visitor_ast.mli
parsing_cocci/visitor_ast0.ml
parsing_cocci/visitor_ast0.mli
popl/Makefile
popl/ast_popl.ml
popl/asttopopl.ml
popl/insert_befaft.ml
popl/insert_quantifiers.ml
popl/popl.ml
popl/popltoctl.ml
popl/pretty_print_popl.ml
popl09/.#Makefile.1.3 [deleted file]
popl09/.cvsignore [deleted file]
popl09/.depend
popl09/Makefile
popl09/ast_popl.ml
popl09/asttopopl.ml
popl09/flag_popl.ml
popl09/insert_quantifiers.ml
popl09/popl.ml
popl09/popltoctl.ml
popl09/pretty_print_popl.ml
pycaml/.cvsignore [deleted file]
python/.#yes_pycocci.ml.1.1 [deleted file]
python/.cvsignore [deleted file]
python/.depend
python/Makefile
python/coccilib/.cvsignore [deleted file]
python/coccilib/coccigui/.cvsignore [deleted file]
python/coccilib/output.py
python/no_pycocci.ml
python/no_pycocci_aux.ml
python/yes_pycocci.ml
python/yes_pycocci_aux.ml
readme.txt
standard.iso
testing.ml
testing.mli
tests/.cvsignore [deleted file]
tests/bad_define_parse.c [new file with mode: 0644]
tests/bad_define_parse.cocci [new file with mode: 0644]
tests/bad_iso_example.cocci
tests/bad_ptr_print.c [new file with mode: 0644]
tests/bad_ptr_print.cocci [new file with mode: 0644]
tests/bad_ptr_print.res [new file with mode: 0644]
tests/bad_typedef.cocci
tests/compare.res
tests/const_array.res
tests/empty.iso [new file with mode: 0644]
tests/expopt3.res
tests/expopt3_ver1.res
tests/expopt3_ver2.res
tests/file.h [new file with mode: 0644]
tests/km.c
tests/km.res
tests/longlong.c [new file with mode: 0644]
tests/longlong.cocci [new file with mode: 0644]
tests/longlong.res [new file with mode: 0644]
tests/lvalue.res
tests/macro.res
tests/my.h [new file with mode: 0644]
tests/null.cocci
tests/pci_noputm.cocci
tests/rcu2.cocci
tests/retmac.c [new file with mode: 0644]
tests/test_unsigned_meta.c [new file with mode: 0644]
tests/test_unsigned_meta.cocci [new file with mode: 0644]
tests/test_unsigned_meta.res [new file with mode: 0644]
tests/toplevel_struct_modif.cocci
tests/video.cocci
tests/video1.cocci
tests/video1bis.cocci
tests/video2.cocci
tests/video3.cocci
tools/Makefile
tools/distributed/.cvsignore [deleted file]
tools/distributed/Makefile
tools/distributed/spatch_linux.c
tools/distributed/spatch_linux_script
tools/licensify.ml