summaryrefslogtreecommitdiffstats
path: root/bgpd
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2016-08-16 17:48:44 +0200
committerDonald Sharp <sharpd@cumulusnetworks.com>2016-09-19 22:31:08 +0200
commit896af92e5b7f65de317b281acf469ccb9d713bb1 (patch)
tree61a25ee462b1d29f47a641c37156795181c4b680 /bgpd
parentlib: deregister memtypes on exit/unload (diff)
downloadfrr-896af92e5b7f65de317b281acf469ccb9d713bb1.tar.xz
frr-896af92e5b7f65de317b281acf469ccb9d713bb1.zip
vtysh: work around gcc bug #69981
The memtypes changes break gcc -O0 build (none of the other optimisation levels are affected, *any* of -Og, -Os, -O1, etc. make this go away). Unfortunately, the option supposed to control this doesn't actually work (-fno-keep-static-const; that not working is the actual gcc bug). The workaround is to avoid DECLARE_MTYPE statements when their paired DEFINE_MTYPE isn't linked in. Thankfully, that's only a problem in a single place in vtysh where bgp_memory.h gets chain-included. (vtysh.c -> bgp_vty.h -> bgpd.h -> bgp_memory.h) So, this just breaks the chain at bgp_vty.h. No other compiler (clang & icc tested) has exhibited this problem. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
Diffstat (limited to 'bgpd')
-rw-r--r--bgpd/bgp_vty.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/bgpd/bgp_vty.h b/bgpd/bgp_vty.h
index ba520af06..573e8c707 100644
--- a/bgpd/bgp_vty.h
+++ b/bgpd/bgp_vty.h
@@ -21,7 +21,7 @@ Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
#ifndef _QUAGGA_BGP_VTY_H
#define _QUAGGA_BGP_VTY_H
-#include "bgpd/bgpd.h"
+struct bgp;
#define CMD_AS_RANGE "<1-4294967295>"
#define DYNAMIC_NEIGHBOR_LIMIT_RANGE "<1-5000>"