https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100904

--- Comment #11 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
(In reply to Andrew Pinski from comment #10)
> (In reply to Andrew Pinski from comment #9)
> > I think the issue is here:
> >                   /* This is a kludge.  We want to have the ISO
> >                      preprocessor lex the next token.  */
> >                   pfile->buffer->cur = cur;
> > 
> > We don't set up `buffer->rlimit`, `buffer->line_base`, nor
> > `buffer->need_line` correctly. Which is why the line is off by 1 and the
> > column is off by 2.
> > I think I Have a fix for this.
> 
> Now thinking about it, need_line being true before the call to
> _cpp_handle_directive is causing PR 79516. Though there in_deferred_pragma
> should be false at the point of #if anyways. So that is the right fix there
> still. Here we definitely need to set it to false before calling
> _cpp_handle_directive .

So It is just need_line  I think.

Reply via email to