Skip to content

Remove confusing C++/WinRT command line behavior#505

Merged
kennykerr merged 4 commits into
masterfrom
kennykerr-compat
Jul 9, 2019
Merged

Remove confusing C++/WinRT command line behavior#505
kennykerr merged 4 commits into
masterfrom
kennykerr-compat

Conversation

@kennykerr

Copy link
Copy Markdown
Contributor

In C++/WinRT 1.0, there was a subtle - and it turns out rather confusing - command line behavior where the component name (used to derive generated component file names) was itself derived from the first -input argument and only if the -name option was not also specified. This is confusing as the winmd name is not guaranteed to match the namespace name and particularly so when you consider that the file system is not case sensitive but C++ is.

This behavior has now been removed and replaced with a warning to help diagnose any build failures. For example:

> cppwinrt.exe -in C:\windows\system32\WinMetadata\Windows.Management.winmd -ref local -component

warning: Use '-name Windows.Management' to specify the explicit name for component files.

Fixes #309

@kennykerr kennykerr merged commit 2f74612 into master Jul 9, 2019
@kennykerr kennykerr deleted the kennykerr-compat branch July 9, 2019 17:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

cppwinrt.exe -in option has file name case dependent behavior, add option to opt out

2 participants