Go to declaration of macro or record doesn't work if they are defined in include_lib-ed header file
The title says it all, there is no error in the module, the header file could be resolved, still, if I hit F3 while cursor is on either a macro or record that are defined in the header file, nothing happens whereas it should go to declaration. F3 on any function works fine...
ref: https://github.com/erlide/erlide/issues/24
ref: https://github.com/erlide/erlide/issues/24
Leave a comment
on 2012-01-30 07:00 *
By Vlad Dumitrescu
Milestone changed from sprint #28 - 0.15 to sprint #29 - 0.16
Milestone changed from sprint #28 - 0.15 to sprint #29 - 0.16
on 2012-01-30 14:17 *
By Vlad Dumitrescu
Priority changed from Normal (3) to High (2)
Priority changed from Normal (3) to High (2)
on 2012-02-01 06:44 *
By Vlad Dumitrescu
Comment from user:
I think I finally understood what's going on and why it failed. In fact, this was a configuration problem. I wrote a little script to do what Erlide will hopefully do at some point (see #39).
To not get an include error, I need to have the base folder relative to which the path given to include_lib is resolved configured as include folder, i.e. /lib in my case assuming app lives in /lib and the include uses app/include/header.hrl. However, to get F3(and Erlang search) to work, I have to have lib/app/include configured as include folder as well. My script looks for src, test and include folders in the apps and modifies the Erlang preference file accordingly. I then have to clean my project(I think that was my problem with the example I gave).
The only cases where this doesn't work is include_lib(include/header.hrl) - relative includes that is(webmachine uses this for example) because I don't handle this in my script, but I could, and "recursive" includes. If file.erl includes header1.hrl and header1.hrl includes header2.hrl which contains the actual definitions, F3 doesn't work for these in file.erl.
Erlang Search works though which is good enough for me. It would be great if this could be fixed and the whole include directory configuration automated, but a little help link on the config page would do as well I guess.
I think I finally understood what's going on and why it failed. In fact, this was a configuration problem. I wrote a little script to do what Erlide will hopefully do at some point (see #39).
To not get an include error, I need to have the base folder relative to which the path given to include_lib is resolved configured as include folder, i.e. /lib in my case assuming app lives in /lib and the include uses app/include/header.hrl. However, to get F3(and Erlang search) to work, I have to have lib/app/include configured as include folder as well. My script looks for src, test and include folders in the apps and modifies the Erlang preference file accordingly. I then have to clean my project(I think that was my problem with the example I gave).
The only cases where this doesn't work is include_lib(include/header.hrl) - relative includes that is(webmachine uses this for example) because I don't handle this in my script, but I could, and "recursive" includes. If file.erl includes header1.hrl and header1.hrl includes header2.hrl which contains the actual definitions, F3 doesn't work for these in file.erl.
Erlang Search works though which is good enough for me. It would be great if this could be fixed and the whole include directory configuration automated, but a little help link on the config page would do as well I guess.
on 2012-03-16 02:36 *
By Vlad Dumitrescu
Milestone changed from sprint #30 - 0.15.2 to backlog
Milestone changed from sprint #30 - 0.15.2 to backlog
on 2012-06-06 16:06 *
By Vlad Dumitrescu
Status changed from Ongoing to New
Status changed from Ongoing to New
on 2013-01-09 04:21 *
By Vlad Dumitrescu
Affected by xtext set to Yes
Milestone changed from deprecated because of xtext version to backlog
Affected by xtext set to Yes
Milestone changed from deprecated because of xtext version to backlog
on 2013-01-23 05:08 *
By Vlad Dumitrescu
Assigned to changed from jakobc to -none-
Assigned to changed from jakobc to -none-
on 2013-01-24 06:47 *
By Vlad Dumitrescu
Found in version changed from 0.13 to -none-
Erlang engine changed from No to Yes
Found in version changed from 0.13 to -none-
Erlang engine changed from No to Yes
on 2013-05-22 06:50 *
By Vlad Dumitrescu
Component changed from None to code model
Component changed from None to code model
on 2013-07-02 12:43 *
By Vlad Dumitrescu
Milestone changed from backlog to v1.0
Milestone changed from backlog to v1.0