I don't understand the warnings below. There is no destructor supplied for std::pair, so why a complaint about a missing body? And what does "function not considered for inlining" mean? I'm also suspicious about the "growth limit", since the code isn't very complicated. See attachment for all warnings and source. alpha1:PD>uname -a Linux alpha1 2.4.9-40 #1 Mon Sep 23 08:14:02 EDT 2002 alpha unknown alpha1:PD>g++ -v Reading specs from /usr/local/lib/gcc/alphaev56-unknown-linux-gnu/3.5.0/specs Configured with: ../gcc/configure --verbose --enable-languages=c++ Thread model: posix gcc version 3.5.0 20040207 (experimental) g++ configured with: alpha1:PD>alias CONFIGURECVS alias CONFIGURECVS='../gcc/configure --verbose --enable-languages=c++ --disable-nls >clog 2>&1' g++ built with: alpha1:PD>alias BUILD alias BUILD='nice gmake CFLAGS='\'''\'' BOOT_CFLAGS='\''-O'\'' LIBCFLAGS='\''-g -O'\'' LIBCXXFLAGS='\''-g -O'\'' bootstrap >log 2>&1' /usr/local/bin/g++ -c -O3 -DNDEBUG -D__USE_STRING_INLINES=1 -pedantic-errors -Werror -ansi -fno-common -fstrict-aliasing -Wall -Wold-style-cast -Wsign-promo -Wpointer-arith -Wconversion -Wundef -Wwrite-strings -Winvalid-pch -Woverloaded-virtual -Wcast-qual -Winline -Wextra -MMD -fimplicit-templates -o SymbolTable.o SymbolTable.cc PDSymbolTable.h:675: warning: inlining failed in call to 'std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, __gnu_norm::deque<PatternDriver::pdboolean, std::allocator<PatternDriver::pdboolean> > >::~pair()': function body not available /usr/local/lib/gcc/alphaev56-unknown-linux-gnu/3.5.0/../../../../include/c++/3.5.0/bits/stl_pair.h:91: warning: called from here PDSymbolTable.h:675: warning: inlining failed in call to 'std::pair<const PatternDriver::pdstring, PatternDriver::pdbooleans>::~pair()': function not considered for inlining /usr/local/lib/gcc/alphaev56-unknown-linux-gnu/3.5.0/../../../../include/c++/3.5.0/bits/stl_map.h:360: warning: called from here PDSymbolTable.h:658: warning: inlining failed in call to 'std::pair<std::basic_string<char, std::char_traits<char>, std::allocator<char> >, __gnu_norm::vector<PatternDriver::pdfloat, std::allocator<PatternDriver::pdfloat> > >::~pair()': --param large-function-growth limit reached while inlining the caller /usr/local/lib/gcc/alphaev56-unknown-linux-gnu/3.5.0/../../../../include/c++/3.5.0/bits/stl_pair.h:86: warning: called from here
Created attachment 7018 [details] Log file from compile, and .ii source
There are destructors even if there does not exist one in the code. It is a method which is created by the compiler so maybe we should not be warning about it.
I can't reproduce this on my x86 linux machine. I realize you have a fairly old mainline snapshot, would you mind testing this again with a newer one? Thanks Wolfgang
Subject: Re: -Winline complains about nonexistent destructor On Tuesday 07 September 2004 16:19 pm, bangerth at dealii dot org wrote: > ------- Additional Comments From bangerth at dealii dot org 2004-09-07 > 23:19 ------- I can't reproduce this on my x86 linux machine. I realize you > have a fairly old mainline snapshot, would you mind testing this again with > a newer one? > I managed to build finally from CVS, and this problem does not recur.
So closing fixed.
Thanks, James, for double-checking! W.