arjanadriaanse / pascal-language-server

LSP server implementation for Pascal
GNU General Public License v3.0
56 stars 20 forks source link

Free Pascal release #9

Closed pbgc closed 4 years ago

pbgc commented 4 years ago

Hi

Thank you for you work!

The readme says that the needed Free Pascal version is 3.2.0 ... but the latest release is 3.0.4

You wanted to say 3.0.2 or this language server needs a dev version release that I cannot find ?

Thanks Pedro Costa

arjanadriaanse commented 4 years ago

Recently a release candidate of version 3.2.0 became available here: ftp://ftp.freepascal.org/pub/fpc/beta/3.2.0-rc1/

pbgc commented 4 years ago

@arjanadriaanse thank! Sorry I didn't know about that.

raxod502 commented 4 years ago

The project fails to build for me, using FPC 3.0.4 and Lazarus 2.0.6+dfsg-3 (the latest available on the latest Ubuntu release, Focal). Is that why?

Build log

``` Hint: (lazarus) [RunTool] "/usr/bin/fpc" "-iWTOTP" Hint: (lazarus) [RunTool] "/usr/bin/fpc" "-va" "compilertest.pas" Hint: (lazarus) [RunTool] "/usr/bin/fpc" "-iWTOTP" "-Px86_64" "-Tlinux" Hint: (lazarus) [RunTool] "/usr/bin/fpc" "-va" "compilertest.pas" "-Px86_64" "-Tlinux" Hint: (lazarus) Missing state file of weblaz 1.0: /usr/lib/lazarus/2.0.6/components/fpweb/lib/x86_64-linux/weblaz.compiled Error: (lazarus) unable to create package output directory "/usr/lib/lazarus/2.0.6/components/fpweb/lib/x86_64-linux" of package "weblaz 1.0" Hint: (lazarus) normal output directory of package weblaz 1.0 is not writable: "/usr/lib/lazarus/2.0.6/components/fpweb/lib/x86_64-linux/" TParsedCompilerOptions.SetOutputDirectoryOverride New=/home/docker/.lazarus/lib/weblaz/lib/x86_64-linux TProject.DoLoadStateFile Statefile not found: /tmp/pascal-language-server/lib/x86_64-linux/pasls.compiled Info: (lazarus) Execute Title="Compile Project, Mode: Debug, Target: lib/x86_64-linux/pasls" Info: (lazarus) Working Directory="/tmp/pascal-language-server/" Info: (lazarus) Executable="/usr/bin/fpc" Info: (lazarus) Param[0]="-B" Info: (lazarus) Param[1]="-MObjFPC" Info: (lazarus) Param[2]="-Scaghi" Info: (lazarus) Param[3]="-Cg" Info: (lazarus) Param[4]="-CirotR" Info: (lazarus) Param[5]="-O1" Info: (lazarus) Param[6]="-gw2" Info: (lazarus) Param[7]="-godwarfsets" Info: (lazarus) Param[8]="-gl" Info: (lazarus) Param[9]="-gh" Info: (lazarus) Param[10]="-Xg" Info: (lazarus) Param[11]="-gt" Info: (lazarus) Param[12]="-l" Info: (lazarus) Param[13]="-vewnhibq" Info: (lazarus) Param[14]="-Fi/tmp/pascal-language-server/lib/x86_64-linux" Info: (lazarus) Param[15]="-Fu/home/docker/.lazarus/lib/weblaz/lib/x86_64-linux" Info: (lazarus) Param[16]="-Fu/usr/lib/lazarus/2.0.6/components/sqldb/lib/x86_64-linux/gtk2" Info: (lazarus) Param[17]="-Fu/usr/lib/lazarus/2.0.6/components/ideintf/units/x86_64-linux/gtk2" Info: (lazarus) Param[18]="-Fu/usr/lib/lazarus/2.0.6/components/synedit/units/x86_64-linux/gtk2" Info: (lazarus) Param[19]="-Fu/usr/lib/lazarus/2.0.6/components/lazcontrols/lib/x86_64-linux/gtk2" Info: (lazarus) Param[20]="-Fu/usr/lib/lazarus/2.0.6/lcl/units/x86_64-linux/gtk2" Info: (lazarus) Param[21]="-Fu/usr/lib/lazarus/2.0.6/lcl/units/x86_64-linux" Info: (lazarus) Param[22]="-Fu/usr/lib/lazarus/2.0.6/components/codetools/units/x86_64-linux" Info: (lazarus) Param[23]="-Fu/usr/lib/lazarus/2.0.6/components/lazutils/lib/x86_64-linux" Info: (lazarus) Param[24]="-Fu/usr/lib/lazarus/2.0.6/packager/units/x86_64-linux" Info: (lazarus) Param[25]="-Fu/tmp/pascal-language-server/" Info: (lazarus) Param[26]="-FE/tmp/pascal-language-server/lib/x86_64-linux/" Info: (lazarus) Param[27]="-o/tmp/pascal-language-server/lib/x86_64-linux/pasls" Info: (lazarus) Param[28]="-dLCL" Info: (lazarus) Param[29]="-dLCLgtk2" Info: (lazarus) Param[30]="pasls.lpr" Hint: (11030) Start of reading config file /etc/fpc.cfg Hint: (11031) End of reading config file /etc/fpc.cfg Free Pascal Compiler version 3.0.4+dfsg-23 [2019/11/25] for x86_64 Copyright (c) 1993-2017 by Florian Klaempfl and others (1002) Target OS: Linux for x86-64 (3104) Compiling pasls.lpr (3104) Compiling lsp.pas (3104) Compiling basic.pas /tmp/pascal-language-server/lsp.pas(219,29) Error: (4001) Incompatible types: got "" expected "" /tmp/pascal-language-server/lsp.pas(239,12) Error: (5000) Identifier not found "specialize" /tmp/pascal-language-server/lsp.pas(239,23) Fatal: (2003) Syntax error, ";" expected but "identifier TLSPSTREAMING" found Fatal: (1018) Compilation aborted Error: /usr/bin/ppcx64 returned an error exitcode Error: (lazarus) Compile Project, Mode: Debug, Target: lib/x86_64-linux/pasls: stopped with exit code 1 Error: (lazbuild) failed compiling of project /tmp/pascal-language-server/pasls.lpi ```

arjanadriaanse commented 4 years ago

Yes, it seems to fail on the generics features that were only added in version 3.2.0 which was released recently: https://forum.lazarus.freepascal.org/index.php/topic,50274.0.html