aboutsummaryrefslogtreecommitdiff
path: root/gcc/rust/resolve/rust-rib.cc
diff options
context:
space:
mode:
authorMarc Poulhiès <dkm@kataplop.net>2023-07-12 19:00:10 +0200
committerArthur Cohen <arthur.cohen@embecosm.com>2024-01-16 19:00:26 +0100
commit8b1e1faa7f2eec13df511fa76d181337efb14f4d (patch)
treeb27afcc750e989da83dcf0a659d2e4cf23eb2b54 /gcc/rust/resolve/rust-rib.cc
parent3b0a200eb8c986f17c550b902d5f7ab832b716e2 (diff)
downloadgcc-8b1e1faa7f2eec13df511fa76d181337efb14f4d.zip
gcc-8b1e1faa7f2eec13df511fa76d181337efb14f4d.tar.gz
gcc-8b1e1faa7f2eec13df511fa76d181337efb14f4d.tar.bz2
gccrs: better handling of incorrect file loading in include_* builtin macros
When the load_file_bytes() fails to open the file, it emits an error but returns an empty vector (as if the file is empty). Instead, return a tl::optional nullopt in case of error and an empty vector in case of an empty file. fixes #2421 gcc/rust/ChangeLog: * expand/rust-macro-builtins.cc (load_file_bytes): Return a tl::optional. (MacroBuiltin::include_byte_handler): Adjust and check file was correctly opened. (MacroBuiltin::include_str_handler): Likewise. gcc/testsuite/ChangeLog: * rust/compile/empty_file: New file. * rust/compile/issue-2421_str.rs: New test. Signed-off-by: Marc Poulhiès <dkm@kataplop.net>
Diffstat (limited to 'gcc/rust/resolve/rust-rib.cc')
0 files changed, 0 insertions, 0 deletions