[llvm-dev] cross-checking external declarations / debug info for declarations
Adrian Prantl via llvm-dev
llvm-dev at lists.llvm.org
Fri Dec 9 09:00:39 PST 2016
> On Dec 8, 2016, at 7:43 AM, David Callahan via llvm-dev <llvm-dev at lists.llvm.org> wrote:
>
> I am interested in putting together a tool which can verify that an external declaration conforms with the actual definition.
>
> A.c:
> extern int32_t foo();
> Int bar() { return foo(); }
>
> B.c:
> int64_t foo() { … }
>
> I had thought that I could use the debug information but the debug information in A.o does not include the type of the declaration “foo”, just the type of bar.
>
> Is there a way to include declarations as well as definitions such as a above? It appears there is a notion of “retained” types, perhaps I add a flag to retain declarations?
You should take a look at
https://reviews.llvm.org/D18565
which implements (almost?) all that you're asking for.
-- adrian
>
> Perhaps a different approach?
>
> Thanks
> —david
>
>
>
> _______________________________________________
> LLVM Developers mailing list
> llvm-dev at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev
More information about the llvm-dev
mailing list