This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
On 03/24/2016 09:20 AM, Bernd Schmidt wrote:
On 03/23/2016 03:21 PM, Richard Biener wrote:On Wed, Mar 23, 2016 at 2:15 PM, Bernd Schmidt <bschmidt@redhat.com> wrote:On 03/23/2016 01:41 PM, Richard Biener wrote:Btw, the issue in the PR is also fixed with a simple Index: libcpp/line-map.c =================================================================== --- libcpp/line-map.c (revision 234415) +++ libcpp/line-map.c (working copy) @@ -543,7 +543,7 @@ linemap_add (struct line_maps *set, enum to_file); /* A TO_FILE of NULL is special - we use the natural values. */ - if (error || to_file == NULL) + if (to_file == NULL) { to_file = ORDINARY_MAP_FILE_NAME (from); to_line = SOURCE_LINE (from, from[1].start_location);I looked at that, but that made it hard to add the testcase as the line numbers no longer match the dg-error directives. By moving this code we can ignore the erroneous #line directive, and for this one testcase at least, that makes the line numbers (and caret diagnostics etc.) come out right.After some more digging and looking at your patch I'd approve that if it would emit a warning rather than an error - so can you please adjust it?Like this? No one has yet approved any better wording for the message, so given that you said "it's not a regression" I've left it, but I would now prefer "linemarker ignored due to incorrect nesting". Bernd cpp-leave.diff PR lto/69650 * directives.c (do_linemarker): Test for file left but not entered here. * line-map.c (linemap_add): Not here. PR lto/69650 * gcc.dg/pr69650.c: New test.
OK. Also OK if you want to fixup the message. jeff
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |