Age | Commit message (Collapse) | Author | Files | Lines | |
---|---|---|---|---|---|
2017-07-26 | Implement module map storage in .d, use -fmodule-file-map in GCC | Boris Kolpackov | 2 | -10/+49 | |
2017-07-25 | Fix bug in switching to preprocessed source | Boris Kolpackov | 1 | -7/+9 | |
2017-07-25 | Remove incorrect assert in imported library processing logic | Boris Kolpackov | 1 | -2/+5 | |
2017-07-25 | Optimize handling of #line directives that don't change file | Boris Kolpackov | 2 | -2/+17 | |
2017-07-25 | Use absolute path to translation unit | Boris Kolpackov | 2 | -40/+56 | |
This seems to be the only sane way to obtain the same hash regardless of the working directory. | |||||
2017-07-24 | Get rid of VC warnings | Karen Arutyunov | 1 | -6/+6 | |
2017-07-24 | Issue diagnostics when we ignore ignorable changes | Boris Kolpackov | 1 | -2/+10 | |
2017-07-24 | Optimize C/C++ lexer | Boris Kolpackov | 4 | -12/+161 | |
2017-07-22 | Increase target data pad size | Boris Kolpackov | 1 | -2/+2 | |
2017-07-22 | Implement detection of ignorable changes (whitespaces, comments) | Boris Kolpackov | 6 | -142/+327 | |
2017-07-21 | Use binary mode when pre-parsing translation unit | Boris Kolpackov | 1 | -2/+3 | |
Failed that, the module export position we obtain cannot be reliably seeked to. | |||||
2017-07-21 | Adjust GCC module option name (-fmodule-file) | Boris Kolpackov | 1 | -1/+1 | |
2017-07-21 | Unset VC's IFCPATH if we are using custom std.* modules | Boris Kolpackov | 2 | -10/+48 | |
2017-07-21 | Keep partially preprocessed output around if using modules | Boris Kolpackov | 1 | -27/+52 | |
Since with modules we may have to recompile and otherwise unchanged translation unit because of a BMI change. | |||||
2017-07-19 | Add support for custom std.* modules in VC | Boris Kolpackov | 1 | -16/+48 | |
2017-07-05 | Keep track of translation unit type, make own BMI for impl unit first | Boris Kolpackov | 3 | -36/+65 | |
2017-06-29 | Pass entire BMI graph, not only direct imports and re-exports | Boris Kolpackov | 2 | -30/+63 | |
All current implementations require access to the entire graph (though Clang embeds the file references so we don't need to pass the options). | |||||
2017-06-24 | Make VC compatible with 'export module M;' by fixing up preprocessed output | Boris Kolpackov | 5 | -13/+55 | |
2017-06-22 | Add extra support for symbol exporting in modularized projects | Boris Kolpackov | 3 | -3/+31 | |
Since modules don't see each other's macros, we can use a single, keyword- like macro for dll-exporting that is managed by the build system (so no need for an "export" header). For example: cxx.features.symexport = true export __symexport void f (); | |||||
2017-06-20 | Adjust search logic for std.* modules | Boris Kolpackov | 1 | -14/+45 | |
1. Don't do fuzzy match for std.* modules (more precisely, for 'std' and std.*). This means if we want to build a std.* module, we have to specify its name explicitly: mxx{std-core}@./: cc.module_name = std.core The idea is that we don't want, say, std.core to be fuzzy-matched to some unrelated core.mxx while #2 below could have done the right thing. 2. We allow such modules to go unresolved with the assumption that they are pre-built and will be found by other means (e.g., VC's IFCPATH). | |||||
2017-06-20 | Force Clang not to reference source files from BMIs, add trace | Boris Kolpackov | 1 | -1/+12 | |
2017-06-20 | Fix bug in bmi{} rule chaining | Boris Kolpackov | 1 | -2/+8 | |
2017-06-16 | Add support for explicitly specifying module name on mxx{} target | Boris Kolpackov | 1 | -20/+31 | |
2017-06-16 | Clean up module-related diagnostics | Boris Kolpackov | 2 | -7/+25 | |
2017-06-16 | Store module information in depdb | Boris Kolpackov | 4 | -98/+254 | |
2017-06-15 | Add support for ln testscript builtin | Karen Arutyunov | 1 | -12/+10 | |
2017-06-15 | Implement module search in prerequisite libraries | Boris Kolpackov | 1 | -78/+164 | |
2017-06-14 | Get rid of warnings | Boris Kolpackov | 1 | -2/+2 | |
2017-06-14 | Next installment in C++ modules saga: module search, re-export support | Boris Kolpackov | 6 | -66/+403 | |
2017-06-12 | Remove few unused lambda captures | Boris Kolpackov | 3 | -6/+6 | |
2017-06-12 | Fix couple of deadly bugs | Boris Kolpackov | 1 | -1/+1 | |
2017-06-12 | Add workaround for Clang module import during preprocessing | Boris Kolpackov | 2 | -19/+22 | |
2017-06-09 | Add support for VC15u3 which bumped the compiler version to 19.11 | Boris Kolpackov | 1 | -9/+11 | |
2017-06-08 | Implement rule chaining for modules | Boris Kolpackov | 7 | -260/+458 | |
2017-06-05 | Fix bug in library meta-information protocol implementation | Boris Kolpackov | 1 | -7/+9 | |
2017-06-04 | Adjust Clang language selection | Boris Kolpackov | 1 | -22/+9 | |
2017-06-02 | Link support for modules: link object member, synthesize rules | Boris Kolpackov | 1 | -40/+78 | |
2017-06-01 | Implement module interface unit compilation for Clang and VC | Boris Kolpackov | 2 | -79/+184 | |
2017-06-01 | Rename function not to clash with type | Boris Kolpackov | 2 | -8/+8 | |
2017-06-01 | Rework language selection during compilation code | Boris Kolpackov | 2 | -50/+108 | |
2017-05-31 | Fix bug in compiler language selection (-x option) | Boris Kolpackov | 1 | -6/+6 | |
2017-05-31 | C++ modules work: add target types | Boris Kolpackov | 6 | -52/+126 | |
2017-05-30 | Make use of ifdstream::read_text() | Karen Arutyunov | 1 | -4/+1 | |
2017-05-30 | Diagnose lack of module support in extract_modules() | Boris Kolpackov | 2 | -5/+16 | |
2017-05-30 | Rework C/C++ standard translation in preparation for experimental/modules | Boris Kolpackov | 7 | -57/+45 | |
Also fix bug in clang-apple versioning. | |||||
2017-05-29 | Work around VC14 bug | Boris Kolpackov | 1 | -1/+2 | |
2017-05-29 | Add ability to limit amount of preprocessing done on source | Boris Kolpackov | 4 | -85/+241 | |
The cc.preprocessed variable can be 'none' (not preprocessed), 'includes' (no depends on preprocessor, e.g., #ifdef, etc), and 'all' (the source is fully preprocessed). Note that for 'all' the source can still contain comments and line continuations. | |||||
2017-05-28 | Fix bug in cc::extract_module() diagnostics | Boris Kolpackov | 1 | -5/+5 | |
2017-05-28 | Diagnose #include directives in C/C++ lexer | Boris Kolpackov | 2 | -23/+33 | |
2017-05-27 | Handle #line directives in C/C++ lexer | Boris Kolpackov | 4 | -57/+172 | |
This way the parser now reports logical rather than physical location in diagnostics. |