[PATCH] D27676: [ELF] - Use full object name if source file name exist when reporting errors.

Rui Ueyama via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 14 14:50:23 PST 2016

ruiu added a comment.

I thought about this for a while. I'd say that having `foo.a(foo.o)(foo.c)` and `foo.o(foo.c)` are not correct because they are inconsistent. If the former were `foo.a(foo.o(foo.c))`, the two are at least consistent, but I guess that's hard to read.

We have a lot of combinations here.

- Is an object file in an archive file? Yes or no
- Do we know source filename? Yes or not
- What do we know about the error location inside of the object file: Line number in the original source code, section name in an object file, or nothing

We don't need to print out all the information we know. For example, if we know a line number, we don't need to print out a section name. However, at the same time, we want to print out in a machine-readable format so that it can be integrated to an IDE.

So, that's a little bit complicated. We probably need to come up with a reasonable rule here.


More information about the llvm-commits mailing list