diff options
| author | Jeroen van Rijn <Kelimion@users.noreply.github.com> | 2024-07-22 15:41:39 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-07-22 15:41:39 +0200 |
| commit | a39b6de18ce2c3367371f9eb87e813d68fa7a732 (patch) | |
| tree | 486df565190facadd24c5e68291a71d2ab3e0073 /src/parser.cpp | |
| parent | 73a9a97413e31a2a976f3068a6887cdcfcdbb20b (diff) | |
| parent | 39657e4d968711c11254fa0ee26d576cfc367071 (diff) | |
Merge pull request #3958 from Kelimion/fix-3473
Fix #3473
Diffstat (limited to 'src/parser.cpp')
| -rw-r--r-- | src/parser.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/parser.cpp b/src/parser.cpp index 5a3fc1634..f2d2a1d15 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -5609,7 +5609,7 @@ gb_internal AstPackage *try_add_import_path(Parser *p, String path, String const pkg->foreign_files.allocator = permanent_allocator(); // NOTE(bill): Single file initial package - if (kind == Package_Init && string_ends_with(path, FILE_EXT)) { + if (kind == Package_Init && !path_is_directory(path) && string_ends_with(path, FILE_EXT)) { FileInfo fi = {}; fi.name = filename_from_path(path); fi.fullpath = path; @@ -6529,6 +6529,7 @@ gb_internal ParseFileError parse_packages(Parser *p, String init_filename) { GB_ASSERT(init_filename.text[init_filename.len] == 0); String init_fullpath = path_to_full_path(permanent_allocator(), init_filename); + if (!path_is_directory(init_fullpath)) { String const ext = str_lit(".odin"); if (!string_ends_with(init_fullpath, ext)) { @@ -6543,6 +6544,7 @@ gb_internal ParseFileError parse_packages(Parser *p, String init_filename) { if ((build_context.command_kind & Command__does_build) && build_context.build_mode == BuildMode_Executable) { String short_path = filename_from_path(path); + char *cpath = alloc_cstring(temporary_allocator(), short_path); if (gb_file_exists(cpath)) { error({}, "Please specify the executable name with -out:<string> as a directory exists with the same name in the current working directory"); |