← Back to context

Comment by kazinator

1 day ago

Yes; we are more interested in the other case: it happens to be found.

What are the requirements then?

I don't get your point then. If the file is found then there is no undefined behaviour in the process of the file being included. There might be undefined behaviour in the overall translation unit after the text has been substituted in, but that's nothing to do with the preprocessor.

  • > If the file is found then there is no undefined behaviour in the process of the file being included.

    Correct; but processing doesn't stop there.

    > There might be undefined behaviour in the overall translation unit

    But what does that mean; how do you infer that there might be undefined behavior?

    Does ISO C define the behavior, or does it not?

    ISO C has nothing to say about what is in #include <winkle.h> if such a header is found and didn't come from the program.

    Without having anything to say about what is in it, if it is found at all, ISO C cannot be giving a definition of behavior of the tokens that are substituted for that #include.