1
0
Fork 0
mirror of https://github.com/ton-blockchain/ton synced 2025-02-14 20:22:19 +00:00

Merge pull request #359 from starlightduck/func_dev

FunC #include: Use `td::realpath` and add re-inclusion tests
This commit is contained in:
EmelyanenkoK 2022-05-12 21:12:39 +03:00 committed by GitHub
commit d4fc3dfe7f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 8 additions and 4 deletions

View file

@ -23,7 +23,7 @@
#include "block/block.h"
#include "block-parse.h"
#include <fstream>
#include <climits>
#include "td/utils/port/path.h"
namespace sym {
@ -1657,9 +1657,7 @@ bool parse_source_file(const char* filename, src::Lexem lex) {
throw src::Fatal{msg};
}
}
char realpath_buf[PATH_MAX] = {0, };
realpath(filename, realpath_buf);
std::string real_filename = std::string{realpath_buf};
std::string real_filename = td::realpath(td::CSlice(filename)).move_as_ok();
if (std::count(source_files.begin(), source_files.end(), real_filename)) {
if (verbosity >= 2) {
if (lex.tp) {

View file

@ -12,3 +12,5 @@ global int i;
sub2();
i = 9;
}
#include "../test/i1sub2.fc";

View file

@ -1,6 +1,8 @@
;; DO NOT COMPILE DIRECTLY!
;; Compile i1.fc
#include "i1sub1.fc";
() sub1() impure {
i = 1;
}

View file

@ -1,6 +1,8 @@
;; DO NOT COMPILE DIRECTLY!
;; Compile i1.fc
#include "./i1sub1.fc";
() sub2() impure {
sub1();
sub0();