'Step Into (F11) doesn’t enter some functions in Visual Studio 2015

Inaprogram downloaded from Normal Estimation Using Integral Images. I would like to step into computeFeature (output). enter image description here

The program will not step into the function. Neither press F11 nor set a breakpoint at some line inside the function definition. But the program will step into the next statement deinitCompute().

The method mentioned in Why Visual Studio's debug mode Step Into (F11) sometimes doesn't enter inside some functions? did not work. My Visual Studio 2015 Options setting is like below. enter image description here

The method mentioned in Step into not working, but can force stepping after some asm steps did not work either. My Visual Studio 2015 clien Property Pages setting is like below. enter image description here

The method mentioned in Visual Studio 2012 - how to step into (F11) source code did not work either. The F11 in my Visual Studio 2015 is OK. enter image description here

This problem could repeat in a different computer. How could I get Visual Studio to step directly into the function computeFeature (output)?

Here are the source code Normal Estimation Using Integral Images and the associative test data file table_scene_mug_stereo_textured.pcd.

I'm using Microsoft Visual Studio Enterprise 2015, Version 14.0.23107.0 D 14REL, on Windows 10 Enterprise.



Solution 1:[1]

Some reasons for VS not stepping into a function:
1) There is no debug information for the function.
In this case, you may need to set up VS to step into assembly language.

2) The debug information for the file containing the function is damaged.
Recompile the file in debug mode.

3) The function is in a library and has no debug information.

4) The function is an operating system function and has no debug information.

5) You are running in release mode.

6) The function has no code and has been eliminated.
This could happen depending on your optimization settings.

7) The compiler converted your function into "inline" code (via optimizations).

Solution 2:[2]

@Thomas Matthews has stated most of the cases.

However, in my case, it's because the function I was trying to step into was actually a generator.

I called the generator just like I usually do to void functions. Because C# generators are lazy, they wouldn't execute the function before we trigger it.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Thomas Matthews
Solution 2 Hzzkygcs