[cfe-dev] Regression in Release Candidate 2

Dan Walmsley via cfe-dev cfe-dev at lists.llvm.org
Tue Aug 30 02:23:15 PDT 2016


Hans,     Did you have chance to try this repro?I looked in the library header and the memset prototype looks normal, but libclang still reports the weird one.
Thanks
Dan

From: dan at walms.co.uk
To: hans at chromium.org
CC: cfe-dev at lists.llvm.org
Subject: RE: Regression in Release Candidate 2
Date: Thu, 25 Aug 2016 11:51:26 +0000








Hi, 
   Ok here are my precise instructions which reproduce the issue.I have copied my files including the library being used into a 7zip format.
Here is the link to download (I had attached it but I think it was rejected by email server)https://1drv.ms/u/s!Avy6wigimZy_qY5T9uqsxkkmz0_QQg
Extract the zip file to c:\ (or on Linux ~)
This will extract a folder called AvalonStudio (the IDE I have integrated Clang into.) Don't worry its only 20mb of files for minimal repro.
Then run your test on the file.
AvalonStudio\Projects\Repro\Repro\main.cpp(you will see I have half completed memset function.)

with the following compiler arguments..."-isystemc:\\AvalonStudio\\AppData\\Repos\\AvalonStudio.Toolchains.Clang\\arm-none-eabi\\include -isystemc:\\AvalonStudio\\AppData\\Repos\\AvalonStudio.Toolchains.Clang\\lib\\gcc\\arm-none-eabi\\5.4.1\\include -xc++ -std=c++14 -Wunused-variable "
(if you are on Linux replace c:\\ with the dir where you extracted zip file.)
Many thanks for looking at this with me.
Dan

> From: hans at chromium.org
> Date: Wed, 24 Aug 2016 13:33:39 -0700
> Subject: Re: Regression in Release Candidate 2
> To: dan at walms.co.uk
> CC: cfe-dev at lists.llvm.org
> 
> I've tried to reproduce this, but can't see any difference between
> completeAt in 3.7.1 and 3.9-rc2:
> 
> $ wget http://llvm.org/releases/3.7.1/clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-14.04.tar.xz
> $ tar Jxf clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-14.04.tar.xz
> $ g++ libclang_test.cc -I
> clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-14.04/include -L
> clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-14.04/lib -lclang
> $ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-14.04/lib
> ./a.out | head
> string: 0 chunk: 0 kind: 15 text: char *
> string: 0 chunk: 1 kind: 1 text: stpcpy
> string: 0 chunk: 2 kind: 6 text: (
> string: 0 chunk: 3 kind: 3 text: char *__restrict __dest
> string: 0 chunk: 4 kind: 14 text: ,
> string: 0 chunk: 5 kind: 3 text: const char *__restrict __src
> string: 0 chunk: 6 kind: 7 text: )
> string: 1 chunk: 0 kind: 15 text: void *
> string: 1 chunk: 1 kind: 1 text: rawmemchr
> string: 1 chunk: 2 kind: 6 text: (
> 
> 
> $ wget http://llvm.org/pre-releases/3.9.0/rc2/clang+llvm-3.9.0-rc2-x86_64-linux-gnu-debian8.tar.xz
> $ tar Jxf clang+llvm-3.9.0-rc2-x86_64-linux-gnu-debian8.tar.xz
> $ g++ libclang_test.cc -I
> clang+llvm-3.9.0-rc2-x86_64-linux-gnu-debian8/include -L
> clang+llvm-3.9.0-rc2-x86_64-linux-gnu-debian8/lib -lclang
> $ LD_LIBRARY_PATH=$LD_LIBRARY_PATH:clang+llvm-3.9.0-rc2-x86_64-linux-gnu-debian8/lib
> ./a.out | head
> string: 0 chunk: 0 kind: 15 text: char *
> string: 0 chunk: 1 kind: 1 text: strncat
> string: 0 chunk: 2 kind: 6 text: (
> string: 0 chunk: 3 kind: 3 text: char *__restrict __dest
> string: 0 chunk: 4 kind: 14 text: ,
> string: 0 chunk: 5 kind: 3 text: const char *__restrict __src
> string: 0 chunk: 6 kind: 14 text: ,
> string: 0 chunk: 7 kind: 3 text: int __n
> string: 0 chunk: 8 kind: 7 text: )
> string: 1 chunk: 0 kind: 15 text: void *
> 
> 
> Could it be that the newer clang for some reason grabs the string.h
> header from a different location than the old one? "clang -v" should
> print where it searches for headers.
> 
> char* functionname( void)
> 
> looks like a very strange prototype for memset though.
> 
>  - Hans
> 
> 
> On Wed, Aug 24, 2016 at 3:56 AM, Dan Walmsley <dan at walms.co.uk> wrote:
> >
> > Hi,
> >
> > I noticed a regression in this build...
> >
> > libclang, code completeAt...
> > the results returned inbuilt libraries, i.e. memset
> >
> > all come back as char* functionname( void)
> >
> > if I go back to older build (3.7.1) then this information returns.
> >
> > Any ideas?
> >
> > Dan
> >
> >> Date: Mon, 22 Aug 2016 16:15:12 -0700
> >> To: renato.golin at linaro.org
> >> CC: llvm-dev at lists.llvm.org; release-testers at lists.llvm.org;
> >> cfe-dev at lists.llvm.org; openmp-dev at lists.llvm.org; lldb-dev at lists.llvm.org
> >> Subject: Re: [cfe-dev] [Release-testers] [3.9 Release] Release Candidate 2
> >> source and binaries available
> >> From: cfe-dev at lists.llvm.org
> >>
> >> I replied on the "has been tagged" thread; I couldn't find the binary
> >> on the sftp. Maybe you uploaded the wrong version, or in some other
> >> folder?
> >>
> >> On Mon, Aug 22, 2016 at 4:01 PM, Renato Golin <renato.golin at linaro.org>
> >> wrote:
> >> > Hi Hans,
> >> >
> >> > I did upload the aarch64 binary, didn't you find it? Maybe I uploaded
> >> > the
> >> > wrong one?
> >> >
> >> > Cheers,
> >> > Renato
> >> >
> >> >
> >> > On 22 Aug 2016 7:55 p.m., "Hans Wennborg via Release-testers"
> >> > <release-testers at lists.llvm.org> wrote:
> >> >>
> >> >> We're getting close to the final release. I know the schedule on the
> >> >> web page says 'final' should be tagged today, but I still think it
> >> >> should be possible to get there this week.
> >> >>
> >> >> Source and binaries for LLVM-3.9.0-rc2 are now available at
> >> >> http://llvm.org/pre-releases/3.9.0/#rc2
> >> >>
> >> >> Please try it out and let me know if you find any issues.
> >> >>
> >> >> As we're running out of time, RC2 will be a short test cycle, so if
> >> >> you're planning on testing it, please don't procrastinate it :-)
> >> >>
> >> >> Thanks,
> >> >> Hans
> >> >> _______________________________________________
> >> >> Release-testers mailing list
> >> >> Release-testers at lists.llvm.org
> >> >> http://lists.llvm.org/cgi-bin/mailman/listinfo/release-testers
> >> _______________________________________________
> >> cfe-dev mailing list
> >> cfe-dev at lists.llvm.org
> >> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-dev
 		 	   		   		 	   		   		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20160830/ba83b2f1/attachment.html>


More information about the cfe-dev mailing list