Tags: microsoft/cppwinrt
Tags
C++20 module support v2 (#1575) * Initial implementation of vs modules based on cppwinrtplus fork * Rename WINRT_MODULE -> WINRT_IMPL_BUILD_MODULE; WINRT_CONSUME_MODULE -> WINRT_IMPORT_MODULE * Namespace modules are winrt.Namespace. Non-namespace modules are winrt_base/winrt_numerics Co-authored-by: Copilot <copilot@github.com> * Bootstrap basic unit test Co-authored-by: Copilot <copilot@github.com> * Fix coroutine export. A few more unit tests. Co-authored-by: Copilot <copilot@github.com> * module_include, module_exclude Co-authored-by: Copilot <copilot@github.com> * Rename test_module to test_cpp20_module * Nuget test project with module include/exclude Co-authored-by: Copilot <copilot@github.com> * Refine generated files in component. Co-authored-by: Copilot <copilot@github.com> * Added a type deriving from DependencyObject Co-authored-by: Copilot <copilot@github.com> * Basic module build/consume support Co-authored-by: Copilot <copilot@github.com> * Prefix namespace ixx files with "winrt." for consistency with module names and built ifc files. Co-authored-by: Copilot <copilot@github.com> * IFC needs better per-project scoping. Now it fully works end to end. * Minor fix to TestModuleComponent2 * Documentation and polish. Co-authored-by: YexuanXiao <bizwen@nykz.org> Co-authored-by: Copilot <copilot@github.com> * Fix CI failures Co-authored-by: Copilot <copilot@github.com> * Try for better std hygiene * Address some PR feedback * Better automation of AdditionalBMIDirectories Co-authored-by: Copilot <copilot@github.com> * Missed fallback definition of WINRT_IMPL_STD_EXPORT * Wrap base.h and extern the handler pointers * Uniform namespace filtering * Write trailing comments for #endif * Clarify language version requirement * Add source_location test Co-authored-by: Copilot <copilot@github.com> * Refactor/cleanup some string writers Co-authored-by: Copilot <copilot@github.com> * Add arm64 configs and replace bogus project guids with real guids. Co-authored-by: Copilot <copilot@github.com> * More cleanup of strings. Collected common macros into base_macros.h, generates into winrt/macros.h Co-authored-by: Copilot <copilot@github.com> * More strings cleanup. Emit a canonical winrt/base_macros.h Co-authored-by: Copilot <copilot@github.com> * More clarifications about guidance when sharing pre-built modules Co-authored-by: Copilot <copilot@github.com> * Ensure structured bindings are exported for IKeyValuePair Co-authored-by: Copilot <copilot@github.com> * Fix up module namespace exclude logic so it still generates import statements. * intrin.h and <cstddef> only needed by base, not namespace modules * Tidy up a few codegen bits * Fix sln config on test_cpp20_module project * Namespace modules now check version against imported winrt_base Co-authored-by: Copilot <copilot@github.com> * PR feedback: Test format, hash, natvis hook visibility, message on old compiler Co-authored-by: Copilot <copilot@github.com> * Clean up some handling of numerics-related code and add some numerics smoke tests * De-duplicate windowsnumerics.impl.h logic * A little more WINRT_IMPORT_MODULE cleanup * Use write_depends in SCC writers --------- Co-authored-by: Copilot <copilot@github.com> Co-authored-by: YexuanXiao <bizwen@nykz.org>
Remove references to stale winmd files to fix incremental builds (#1404) The original attempt at a fix for this was too aggressive: https://github.com/microsoft/cppwinrt/pull/1381/files This fix is targeted specifically at removing references to stale winmd files that have yet to be copied from referenced projects (e.g., from a runtime component to an app).
PreviousNext