GCC是否可以优化具有相同主体的函数的代码大小?

我正在用GDB调试C ++程序,结果发现不同的功能是相同的。这是我的意思:

some.hpp

class Base{
   virtual bool foo() const;
   virtual bool bar() const;
}

some.cpp

bool Base::foo() const {
  return false;
}

bool Base::bar() const {
  return false;
}

问题是在gdb中,我看到以下内容:

(gdb) p someBaseObject->foo
$1 = {bool (const Base * const)} 0xdeadf00d <Base::foo() const>
(gdb) p someBaseObject->bar
$2 = {bool (const Base * const)} 0xdeadf00d <Base::foo() const>

我想GCC优化了这两个功能以节省代码大小。可以?但这会使调试复杂化...