Werner Almesberger
0ba0abb74b
b2/test/curr: currency exchange test
2012-06-02 07:48:09 -03:00
Werner Almesberger
dd727b1a8c
b2/test/char: part characteristics database test
2012-06-02 05:55:28 -03:00
Werner Almesberger
ea5732371d
b2/lang.y (part): show part ID in error message
2012-06-02 05:54:55 -03:00
Werner Almesberger
69701f4d14
b2/test/Common: support multiple files of the same kind (!-c1, !-c2, etc.)
2012-06-02 05:50:07 -03:00
Werner Almesberger
f09e4b21fa
b2/: move parts dumping from lang.y to boom.c and make optional (-dc)
2012-06-02 05:49:22 -03:00
Werner Almesberger
22412764d9
b2/db.c: new function parts_dump to dump the whole parts database
2012-06-02 05:48:22 -03:00
Werner Almesberger
be1277eb99
b2/boom.c (main): rearrange to reduce indentation depth
2012-06-02 05:26:33 -03:00
Werner Almesberger
3ebac688bd
b2/: new option -dCHARS to dump specific db; replaces use of -v
2012-06-02 05:24:50 -03:00
Werner Almesberger
b723c8841a
b2/: rename a bit too general "dump" to "dump_param"
2012-06-02 05:18:14 -03:00
Werner Almesberger
6d4c71586d
b2/test/hierred: test for redundant conditions
2012-06-01 14:52:32 -03:00
Werner Almesberger
9cafe23fb8
b2/: simplified and corrected logic behind relop_redundant
...
We now generate the operator map algorithmically, which is a bit less
classy than solving the logical equations, but easier to get right.
Also renamed the somewhat vague "redundant" to "unreachable".
2012-06-01 14:52:12 -03:00
Werner Almesberger
d29e8a7aea
b2/lang.y: '<' is rel_lt, not rel_le
2012-06-01 01:27:49 -03:00
Werner Almesberger
d48a9030e0
b2/: introduce dimensionless values (field syntax: name=##)
2012-06-01 00:20:31 -03:00
Werner Almesberger
e66267faa6
b2/test/hierrul: field rules in hierarchy
2012-05-31 15:56:54 -03:00
Werner Almesberger
8c26e5f708
b2/eval.c (eval_rel): fix stop pointer when parsing absolute tolerance values
2012-05-31 15:48:32 -03:00
Werner Almesberger
6159bdfcdb
b2/dump.c (dump_rel): use %g also for tolerances in percent
2012-05-31 15:47:35 -03:00
Werner Almesberger
a892b63d55
b2/lang.y: don't pop fields from the stack before also handling the rule
2012-05-31 15:35:35 -03:00
Werner Almesberger
4943519eb3
b2/Makefile: run tests with bash, not with sh
...
We need bash for the <(cmd) construct.
2012-05-31 15:35:35 -03:00
Werner Almesberger
39382b1872
b2/: add test for redundant conditions in hierarchy
2012-05-31 15:35:31 -03:00
Werner Almesberger
2239440ef1
b2/new function yywarn; make yyerror reuse yyerrorf
2012-05-31 15:35:27 -03:00
Werner Almesberger
52e58cccbe
b2/test/Common: drop that tacky "file-" prefix in pseudo-filenames
...
Just a plain "h", "c", etc., will do nicely. Also updated the one test
set we have so far.
2012-05-31 15:35:25 -03:00
Werner Almesberger
b0ed4364dc
b2/: new option -v to control verbosity level; move hierarchy dump from parser to boom.c
2012-05-31 15:35:21 -03:00
Werner Almesberger
ef60e92699
b2/test/hierfld: field definitions in hierarchy
2012-05-31 15:35:17 -03:00
Werner Almesberger
88ad25e42c
add regression test infrastructure
2012-05-30 12:12:43 -03:00
Werner Almesberger
60de30cea0
new option -N to override file names in diagnostics (for regression testing)
2012-05-30 12:12:43 -03:00
Werner Almesberger
b6a4a80652
separate dumping of hierchy rules from dumping of fields
...
With only one function, top-level fields definitions were printed in
a style as if they were rules and not fields.
2012-05-30 11:53:58 -03:00
Werner Almesberger
9b1277886b
b2/extract-symbols: don't strip leading / from directory
2012-05-24 00:20:56 -03:00
Werner Almesberger
2ce3b7f82b
b2/bom.c (bom_subst): include input variables in the part's list of variables
2012-05-24 00:09:20 -03:00
Werner Almesberger
1e21ea8a40
b2/param.c: new function merge_vars to merge prioritized lists of variables
2012-05-24 00:08:44 -03:00
Werner Almesberger
5fb156ab93
b2/lang.l: allow commas (,) in words
...
For 74AUP1G08GW,125
2012-05-23 23:25:33 -03:00
Werner Almesberger
7717e7fc3c
b2/extract-symbols: extract cref-symbol map from KiCad schematics
2012-05-23 23:24:38 -03:00
Werner Almesberger
c582c47960
b2/: use -Wmissing-prototypes and -Wmissing-declarations
2012-05-23 19:33:10 -03:00
Werner Almesberger
8759410f80
b2/: use -Wshadow (and fix the place where this caused trouble)
2012-05-23 19:29:04 -03:00
Werner Almesberger
24abc2c49c
b2/: use -Wextra (and fix places where this caused trouble)
2012-05-23 18:48:59 -03:00
Werner Almesberger
66aea07f23
b2/: add BOM dumping; dump processed BOM entries
2012-05-23 18:26:27 -03:00
Werner Almesberger
ec04163f44
b2/: run variable substitution on BOM entries (untested)
2012-05-23 18:13:26 -03:00
Werner Almesberger
4fb17f6e95
b2/bom.h (struct bom): remove unused "next" pointer
2012-05-23 17:41:57 -03:00
Werner Almesberger
f22378937d
b2/: add parsing of supplemental symbol information (option -X)
2012-05-23 17:27:55 -03:00
Werner Almesberger
a537cc5503
b2/subst.c (parse_var): use unique_n
2012-05-23 17:23:14 -03:00
Werner Almesberger
b9066c6331
b2/util.c: new function unique_n for strings limited by length and not NUL
2012-05-23 17:23:14 -03:00
Werner Almesberger
9445f2c85b
b2/bom.c (bom_parse_line): check that components reference are unique
2012-05-23 17:23:14 -03:00
Werner Almesberger
ddd22ba16c
b2/: add parsing of KiCad eeschema BOMs (option -b)
2012-05-23 17:23:14 -03:00
Werner Almesberger
7c8fc30541
b2/boom.c (usage): -Q wasn't mentioned; explain -q and -Q
2012-05-23 15:14:58 -03:00
Werner Almesberger
db279b7920
b2/subex.c (compose): use stralloc_n instead of open-coding its functionality
2012-05-23 14:18:02 -03:00
Werner Almesberger
c9bd26a34d
b2/Makefile: generate dependencies also for YACC- and LEX-generated files
...
We need explicit rules to compile lex.yy.c and y.tab.c for the relaxed
CFLAGS. However, this means that the implicit rule was not used and
therefore no dependencies were generated.
2012-05-22 16:09:22 -03:00
Werner Almesberger
4f142c1250
b2/: for consistency, make "break/continue $" equivalent to "break/continue"
...
Plus a bit of code simplification.
2012-05-22 15:57:55 -03:00
Werner Almesberger
694d48b56a
b2/: make the match name after "break" and "continue" optional
...
If the name is omitted, we jump back / out of the current block.
2012-05-22 15:47:02 -03:00
Werner Almesberger
107280b6d5
b2/: rename "again" to "continue"
2012-05-22 15:44:31 -03:00
Werner Almesberger
bb809b0d6c
b2/: make "again" include the match; make "break" pop the stack
2012-05-22 15:29:27 -03:00
Werner Almesberger
2ce2da5c30
b2/subst.c (resolve_jump): use pointer comparison instead of strcmp
...
Both come from "unique".
2012-05-22 14:27:39 -03:00