Author Topic: Source parsing and symbol usage  (Read 2734 times)

Offline beddu

  • Single posting newcomer
  • *
  • Posts: 2
Source parsing and symbol usage
« on: December 15, 2017, 03:52:30 pm »
Hi!
I am new to this forum and I am not sure if I am posting in the right section...
I have a large C++ project developed with Code::Blocks since the beginning and with nearly NO external libraries.
I am developing directly on Raspberry PI (Jessie) with the (last available throught apt-get) version of Code::Blocks 13.12.

Why some of my C++ sources are not parsed for auto-completion and symbol usage? I cannot browse methods and functions throught the auto-completion toolbar, alt+space gives nothing out, no suggestions, no parameter infos, no symbol usage, nothing. But only on few sources, and always the same ones.

I tried digging in the properties of project and sources but found nothing, searched on internet, found nothing...

Please, enlight me!!

Thank you all in advance,

beddu

Offline BlueHazzard

  • Developer
  • Lives here!
  • *****
  • Posts: 3353
Re: Source parsing and symbol usage
« Reply #1 on: December 15, 2017, 05:22:30 pm »
The parser of code completion (cc) is written in house and does not understands all constructs, like it stops macro expansion after a certain level, tamplate handling is not that strong (for example for shared pointers) ecc... C++ parsing is REALLY HARD, and parsing code as it can contain errors and still be usable is even harder...
And on top of all this you are using a 4 year old not bug free version of codeblocks...

There is a clang code completion out there that works slightly better then the in house cc. Search in the forum and on github for it. But you will have to compile it for your own...

Offline beddu

  • Single posting newcomer
  • *
  • Posts: 2
Re: Source parsing and symbol usage
« Reply #2 on: December 16, 2017, 08:55:52 am »
I see... this is exactly the type of answer that I was really hoping not to get here... but it's like that! That's life!
Unfortunately I never digged in c::b sources and I will not have the chance to start now merging and compiling it by my own, I've got to keep it as it is, at least for now.

Thak you!