no symbol in current context problem when debug the program in gdb

Peng Yu pengyu.ut@gmail.com
Sat Sep 20 16:07:00 GMT 2008


On Mon, Sep 15, 2008 at 2:54 PM, Peng Yu <pengyu.ut@gmail.com> wrote:
>
> Hi,
>
> I have the following program. When I step in to test's constructor, I
> would be able to print the variable three. It says
> (gdb) n
> 7             T three = 3;
> (gdb) n
> 8             std::cout << three << std::endl;
> (gdb) p three
> No symbol "three" in current context.
>
> According to gdb mailing list, this is a bug in GCC. I'm wondering if
> this issue has been resolved in the later versions of GCC.
>
> Thanks,
> Peng
>
> #include <iostream>
>
> template <typename T>
> class test {
>  public:
>   test(const T &a) : _a(a) {
>     T three = 3;
>     std::cout << three << std::endl;
>   }
>  private:
>   T _a;
> };
>
> int main() {
>  test<double> p(10);
> }


Can somebody take a look at this issue? As installing a new compiler
takes a lot of effort, I'd like to know if this has been solved in the
newer version of gcc. If this has not been solved in the newer version
of gcc, can somebody put this thing in the schedule?

Thanks,
Peng



More information about the Gcc mailing list