Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++
12610 Discussions

Problems with Outline window in Eclipse IDE

Altera_Forum
Honored Contributor II
1,095 Views

Hi! I am using Quartus/Nios2 tools version 9.0 and I am experiencing weird behaviour of 'Outlne' window pane in the IDE. 

 

To make sure what I see is not related to some particular problem in my large project I was able to recreate the issue in the simple HelloWorld project based on the standard Cyclone board (full featured project: C:\altera\90\nios2eds\examples\vhdl\niosII_cycloneII_2c35\full_featured\NiosII_cycloneII_2c35_full_featured_sopc.ptf) 

 

Can you please attempt to recreate the issue ans see if the same happens on your computer? 

 

Here is the way to recreate the issue on your computer: 

 

1. Create new HelloWorld project with a default name hello_world_0. 

2. When asked, chose "full_featured" Cyclone board as the hardware platform 

3. Create new system library called default name hello_world_0_syslib 

function called main() is nicely visible now in the outline pane... 

 

4. now enclose main(){} inbetween# ifdef NULL ....# endif 

function called main() disappears from the outline pane... 

 

The NULL symbol is defined in the stdio.h, which we are including... 

Here is the fragment of the stdio.h file: 

# ifndef NULL 

# define NULL 0 

# endif 

 

5. change NULL in your# ifdef directive to be ALT_DEBUG 

function main() reappears in the outline pane. 

 

The difference is that ALT_DEBUG is defined in the IDE options for the preprocessor and not in the# include file. 

So the outline pane is not reading preprocessor files listed after# include directive in search of defined symbols. 

 

Is this as it works on your pc? Is it how it supposed to work?? 

For larger projects with multiple conditional compilations, large parts of the code can be removed or added conditionally on the definition of the preprocessor symbols. So if the outline pane is not reading such symbols BUT also removes parts of code enclosed between# ifdef ...# endif this makes outline pane much less usable, in some cases unusable at all...
0 Kudos
0 Replies
Reply