dalance
aabc9aa646
Merge pull request #61 from DaveMcEwan/ppTests
...
Bugfixes for `preprocess()`, plus organise and extend tests.
2022-08-01 12:11:45 +09:00
damc
da6157952e
ppTests include_quoted_(a|b|c|d)
...
- Illustration of https://github.com/dalance/svlint/issues/77
- That's the same as https://github.com/dalance/sv-parser/issues/48
- A,B show what doesn't work, vaguely defined on page 680.
- C,D show what does work, using example on page 680.
2022-07-26 22:00:46 +02:00
damc
8e461d0de6
ppTests Protect against infinite include recursion.
...
- New argument `include_depth` on `preprocess_str()`.
- Existing function `preprocess()` is now a wrapper for private function
`preprocess_inner()` which uses `include_depth`.
- Commented arguments on all uses of `preprocess()` and `preprocess_str()`.
- Test `include_recursive` is fixed and not ignored.
- Without recursion limit, stack overflow occurs which crashes svls.
2022-07-26 20:21:59 +02:00
damc
3755299139
ppTests include_recursive
...
- Ignored by default.
- Causes stack overflow.
2022-07-26 18:20:22 +02:00
damc
de098895d7
ppTests Simplify tests with preprocess_usualargs()
.
...
1. It's much less visual noise.
2. Preparation for change to `preprocess()` and `preprocess_str()` arguments.
2022-07-26 18:14:10 +02:00
damc
2b9ed78318
ppTests Comment-only explain include implementation.
2022-07-26 17:25:42 +02:00
damc
ddf33de79d
ppTests Explain and rename include_basic,include_origin -> include_withindent,include_noindent
2022-07-26 16:46:13 +02:00
damc
edf66849ea
ppTests Add missing undefineall test.
2022-07-26 13:30:33 +02:00
damc
ab4845a964
ppTests Avoid removal of undef and
undefineall directives.
...
- Similarly to how `define is left in-place, `undef and `undefine are also
left in-place.
- Corresponding fixes to macro_LINE and macro_FILE.
- These directives were not in any testcases before this branch.
2022-07-26 13:10:52 +02:00
damc
543915011b
ppTests undefineall
2022-07-26 13:06:16 +02:00
damc
ae43678b9e
ppTests undef
2022-07-26 12:57:50 +02:00
damc
bf6e5688aa
ppTests line
2022-07-26 12:03:09 +02:00
damc
3c693d0d68
ppTests resetall
2022-07-26 11:48:36 +02:00
damc
c56c6a965b
ppTests pragma
2022-07-26 11:42:17 +02:00
damc
3641284d68
ppTests unconnected_drive
2022-07-26 11:25:59 +02:00
damc
5c96bcb7e6
ppTests default_nettype
2022-07-26 11:25:09 +02:00
damc
466301c9c9
ppTests celldefine
2022-07-26 11:24:39 +02:00
damc
dc36b4b11f
ppTests timescale
2022-07-26 11:24:04 +02:00
damc
15c38aaa0c
ppTests keywords
2022-07-26 11:21:25 +02:00
damc
fc26dbf341
ppTests rm whitespace_directives
...
- Replacing with more thorough tests.
2022-07-26 11:20:39 +02:00
damc
4d647bf72d
ppTests IEEE1800-2017_keyword_*
2022-07-26 10:28:23 +02:00
damc
565d15ccc5
ppTests mv macro_FILE into alphabetical position.
2022-07-26 09:54:41 +02:00
damc
963e17a5ea
ppTests Allow define __FILE__ and
define __LINE__ to parse.
...
- Redefinitions are silently ignored.
- ifdef/ifndef will always treat them as defined.
- Enables compatibility with code from a silicon vendor I can think of.
- NOTE: Whitespace bugs around endif/undef are observable in testcases.
2022-07-25 22:21:28 +02:00
damc
f85809f55a
ppTests macro_FILE
2022-07-25 22:14:22 +02:00
damc
2e77dbc38a
ppTests Extend macro_LINE to catch more unusual behaviour seen in the wild.
2022-07-25 22:07:50 +02:00
damc
7236f51602
ppTests Correct whitespace in macro expansion.
...
- Append the attached WhiteSpace on the end of TextMacroUsage.
That append replaces/corrects "separator is required".
- Ignore leading whitespace as suggested by the BNF in Syntax 22-2.
That SM change replaces/correct "remove leading whitespace".
- All tests now pass as expected.
2022-07-21 22:36:19 +02:00
damc
4f1b566e2b
ppTests Use rearrange tests alphabetically after renames.
2022-07-21 22:26:13 +02:00
damc
026e606136
ppTests Fix IEEE18002017_macro_without_defaults
2022-07-21 22:24:19 +02:00
damc
d1e7f32d05
ppTests Comment-only explain replacements.
2022-07-21 21:40:11 +02:00
damc
28cbd8aaf4
ppTests Extend non-IEEE tests around macros.
2022-07-21 21:39:21 +02:00
damc
1be39f0ce9
ppTests Fold markers around tests.
2022-07-21 18:39:21 +02:00
damc
bd1fc19ee8
ppTests Rename test2.svh -> included.svh
...
- 19 pass, 9 fail due to whitespace.
- All failures are suspected bugs.
2022-07-21 13:51:51 +02:00
damc
f927aee299
ppTests Add missing IEEE18002017_* tests.
2022-07-21 13:45:42 +02:00
damc
d1e6f6e6af
ppTests Fix bad filename.
2022-07-21 13:42:27 +02:00
damc
c5ba2b457b
ppTests Fix bad filename.
2022-07-21 13:35:18 +02:00
damc
daa55135bc
ppTests MESSY Rearrange tests alphabetically.
...
- This should be the last messy commit.
- Renamed and re-arranged tests are now easier to navigate.
- Six test failing for different reasons.
2022-07-21 13:34:23 +02:00
damc
812014ea16
ppTests Add two quotes from LRM in split_text().
2022-07-21 13:19:23 +02:00
damc
e966beb51e
ppTests mv macro_identifier
2022-07-21 13:18:22 +02:00
damc
3e8db79d51
ppTests mv macro_comment
2022-07-21 13:14:24 +02:00
damc
6f752c4cda
ppTests rm missed expected
2022-07-21 13:11:00 +02:00
damc
f4554b062c
ppTests mv IEEE18002017_macro_mix_quotes
2022-07-21 13:10:18 +02:00
damc
d40374b509
ppTests mv IEEE18002017_macro_noexpand_string
2022-07-21 13:08:57 +02:00
damc
637e970b13
ppTests mv macro_basic
2022-07-21 13:07:29 +02:00
damc
81e3d1ea11
ppTests mv macro_multiline_comment
2022-07-21 13:02:42 +02:00
damc
e4b2fdbc49
ppTests mv include_basic
2022-07-21 12:57:56 +02:00
damc
dca16d22b8
ppTests mv include_sameline_comment
2022-07-21 12:51:16 +02:00
damc
2635d27193
ppTests mv include_sameline_keyword
2022-07-21 12:42:14 +02:00
damc
25783f0589
ppTests mv include_sameline_include
2022-07-21 12:41:13 +02:00
damc
c375b4658f
ppTests mv macro_recursion_indirect
2022-07-21 12:39:32 +02:00
damc
e84429600f
ppTests mv macro_recursion_direct
2022-07-21 12:38:41 +02:00