Hi, I noticed the following behaviour of GCC. If I compile with gcc 4.8.1 (Ubuntu 12.04 64 bit) a code made up of several source files and I use the flag -flto to produce a set of object files. Then if I link in another system with older version of gcc (4.7.x or 4.6.x) and without -flto all works well. Otherwise, if I use -flto I get this error: lto1: fatal error: LTO_tags out of range: Range is 0 to 361, value is 15872 compilation terminated. lto-wrapper: g++ returned 1 exit status /usr/bin/ld: lto-wrapper failed collect2: error: ld returned 1 exit status So is not allowed to compile with one version and flto options and link with an old version? Then if I try to link in another machine with Debian 7 64 bit and gcc-4.8.1 with this command: g++ -O3 -march=native -mtune=native -flto /home/user/lib.a -L/usr/local/lib - llibrary1 -lpthread -lz -o dva I get lto1: internal compiler error: in lto_tag_to_tree_code, at lto-streamer. h:924 Please submit a full bug report, with preprocessed source if appropriate. See <http://bugzilla.redhat.com/bugzilla> for instructions. lto-wrapper: g++ returned 1 exit status /usr/bin/ld: lto-wrapper failed collect2: error: ld returned 1 exit status Is it a bug? Thank you