C++ Logo

sg15

Advanced search

Re: "logical name" of importable headers

From: Daniel Ruoso <daniel_at_[hidden]>
Date: Mon, 6 Jun 2022 17:21:37 -0400
Great. So that matches exactly what I was advocating for.

I'll try to write a paper summarizing all this, and advocating for that
approach on all implementations.

On Mon, Jun 6, 2022, 17:19 Gabriel Dos Reis <gdr_at_[hidden]> wrote:

> [Daniel]
> > I may have misunderstood. When the following argument is given:
> >
> > /headerUnit:angle foo.h=/some/foo.h.ifc
> >
> > Does that mean MSVC will not perform a lookup in the include
> > directories and will just apply that for both `#include <foo.h>` and
> > `import <foo.h>`? Even if no there was no foo.h in any of the include
> > directories?
>
> No, MSVC does not look up via include directories before applying the
> mapping of
> import <foo.h>;
>
> to the corresponding IFC. Additionally, if you have /translateInclude and
>
> #include <foo.h>;
>
> it will not look up in the include directory.
>
> However, if you specify
>
> /headerUnit /some/absolute/path/to/foo.h=/some/foo.h.ifc
>
> and you have
>
> #include <foo.h>
>
> it would first look up <foo.h> via the include directories. If the
> selected source file happens to match the mapping specified then it will
> the IFC.
>
> -- Gaby
>
> -----Original Message-----
> From: Daniel Ruoso <daniel_at_[hidden]>
> Sent: Monday, June 6, 2022 1:15 PM
> To: Gabriel Dos Reis <gdr_at_[hidden]>
> Cc: sg15_at_[hidden]; Boris Kolpackov <boris_at_[hidden]>
> Subject: Re: [SG15] "logical name" of importable headers
>
> Em seg., 6 de jun. de 2022 às 15:21, Gabriel Dos Reis
> <gdr_at_[hidden]> escreveu:
> > > Specifically, the input to the compiler would be a map from the token
> > > used after include or import to the header file and the bmi for that
> > > header unit.
> > I think is what MSVC does... no?
>
> I may have misunderstood. When the following argument is given:
>
> /headerUnit:angle foo.h=/some/foo.h.ifc
>
> Does that mean MSVC will not perform a lookup in the include
> directories and will just apply that for both `#include <foo.h>` and
> `import <foo.h>`? Even if no there was no foo.h in any of the include
> directories?
>
> Is there ever a situation where the compiler would need the path to
> the original header?
>
> daniel
>

Received on 2022-06-06 21:21:50