18014cda98
token_type: add field with no logic for populating it
2025-04-15 15:15:30 +02:00
e033909819
makefile: generate depfiles for the correct object files
...
The depfiles were completely ineffective.
Now this is fixed.
The -MT argument sets the path for the dependenency root. By default it is set
only to a filename, and thus does not include the full path of the file.
2025-04-15 14:41:43 +02:00
1c4733b1cc
here_doc: print error if failed to create temp file
2025-03-28 19:10:43 +01:00
a4c482e8f9
here_doc: perform variable expansion
2025-03-28 16:45:28 +01:00
Jérôme Guélen
5ff990ef50
Parsing-refactor: Determining structures.
2025-03-28 15:03:15 +01:00
88ed66e138
refactor cmdlist.num_cmds -> cmdlist.num_cmd to be more consistent
2025-03-28 14:50:37 +01:00
131ba36d93
cmdlist refactor: use cmdlist instead of command_list as a shorthand
...
I hope this doesn't break too much code ^^
2025-03-28 14:50:37 +01:00
56fe943efc
cmdlist: use new architecture (STUB)
...
I fixed the tests, and the basic functionallity of detecting pipelines works,
but detecting nested cmdgroups is not yet implemented
2025-03-28 14:50:37 +01:00
55d21196b8
cmdgroup: start implementing debug routines
2025-03-28 14:50:37 +01:00
f9aa614ef2
cmdgroup parsing: start implementing the new architecture
2025-03-28 14:50:37 +01:00
d6bb24df54
cmdgroup parsing: ensure parsing of a pipeline functions correctly
2025-03-28 14:50:37 +01:00
d8dd1613c8
cmdgroup parsing: handle parsing a single cmdlist (badly)
2025-03-28 14:50:37 +01:00
9707316085
tests: put usefull test functions in own files
2025-03-28 14:50:37 +01:00
f5ae3a5d8d
tests: add a test_ prefix to all files that contain actual tests
...
This will make it easier to differentiate with utility files, as the next change
will add sevral
2025-03-28 14:50:37 +01:00
bc5be67bf6
cmdgroup parsing: parse empty wordlist
2025-03-28 14:50:37 +01:00
10b1ac6711
expansion: add some more test cases
2025-03-21 14:07:00 +01:00
Jérôme Guélen
00f27ae05c
Expansion: fixed the algo for star expansion.
2025-03-21 10:44:39 +01:00
41c9548934
some pair debugging
2025-03-21 10:44:39 +01:00
Jérôme Guélen
b58848e091
Expansion: fix but still a problem matching '.'
...
Problem in the coherence of behaviour regarding ownership with star expansion
fixed.
2025-03-21 10:42:46 +01:00
Jérôme Guélen
da06c0d4e0
Expansion: one little problem remaining with * expansion and .
2025-03-21 10:16:00 +01:00
Jérôme Guélen
2da7f03a66
Expansion: Test directory for future portability
...
Tests to be readjusted for portability.
2025-03-21 10:15:10 +01:00
f0755cd6c4
tests: some fixes
2025-03-21 10:14:37 +01:00
Jérôme Guélen
ea3ecaaf31
Expansion: temporarily sharing broken version
2025-03-21 10:14:37 +01:00
Jérôme Guélen
95d9f6282a
Expansion: refactor in progress
2025-03-21 10:10:30 +01:00
63df02aec5
fix: does not compile
2025-03-21 10:09:32 +01:00
Jérôme Guélen
fa383c4f17
Expansion: variable substitution V1 attempt
...
Norm has been checked, test are not up to date. Wildcard management and
filename expansions still to be done.
2025-03-21 10:09:28 +01:00
Jérôme Guélen
e348040ea4
Subst: A norm NON-compliant and incomplete version
...
The code does not update flags yet and is to be refactored to conform to the
norm.
Tests required but needing a new version of the wordsplitting code.
2025-03-21 10:07:32 +01:00
d30a39d907
here_doc: prepare handling for variable expansion in here_doc
...
This is waiting on #23 to be merged to work
2025-03-11 14:58:13 +01:00
47f449d804
here_doc: handle unexpected EOF
2025-03-11 14:58:13 +01:00
7c6d061c6c
here_doc: handle input with correct end marker
2025-03-11 14:58:13 +01:00
a6d1386574
here_doc: handle input with only an end marker
2025-03-11 14:58:13 +01:00
442aa85e84
here_doc: null marker returns error
2025-03-11 14:58:13 +01:00
99babbf6d2
here_doc: generate random filenames
2025-03-11 14:58:13 +01:00
cae2dfe4d6
here_doc: basic setup
2025-03-11 14:58:13 +01:00
d196649106
redirection parsing: handle other types of redirection
2025-03-11 14:58:13 +01:00
47ac767f2a
redirection parsing: check for null in arguments
2025-03-11 14:58:13 +01:00
5df876bba3
redirection parsing: detect malformed redirection
2025-03-10 16:57:02 +01:00
06dd3c3e83
redirection parings: handle redirections not at start
2025-03-10 16:34:15 +01:00
4116c2d92f
wordlist: add destroy_idx and pop_idx functions
2025-03-10 16:08:59 +01:00
a20ea8315d
redirection parsing: handle > at start of wordlist
2025-03-10 15:10:18 +01:00
cf517bb7f8
redirection parsing: define types in own files
2025-03-10 15:10:18 +01:00
06ebcf132a
redirection parsing: handle commands with no redirections
2025-03-10 15:10:18 +01:00
d30db395a0
cmdlist parsing: ensure parsing works for a single simple command
2025-03-10 13:22:29 +00:00
4c37ec5188
tests: put test back in a sensible order
2025-03-10 13:22:29 +00:00
e6a9010362
tests: make leak_check do nothing when compiled without LSAN
2025-03-10 13:22:29 +00:00
7102998dce
leak: resolve the rest of the memory leaks
2025-03-10 13:22:29 +00:00
69b247697c
leak: resolve one memory leak
2025-03-10 13:22:29 +00:00
5bf4bb8d6a
tests: do lsan test after each test case
2025-03-10 13:22:29 +00:00
9ffde46adc
tests: show test function in output
2025-03-10 13:22:29 +00:00
3778d0a7ee
cmdlist_from_wordlist: make a copy of a wordlist
2025-03-10 13:22:29 +00:00