public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/104040] New: linker: when exported template class from module is used in several .cpp with same tpl arg ~ undefined reference to not default non-inline destructor
@ 2022-01-15  5:34 sm0ke999 at yandex dot ru
  2024-04-10  1:40 ` [Bug c++/104040] " cvs-commit at gcc dot gnu.org
  2024-04-10  1:51 ` nshead at gcc dot gnu.org
  0 siblings, 2 replies; 3+ messages in thread
From: sm0ke999 at yandex dot ru @ 2022-01-15  5:34 UTC (permalink / raw)
  To: gcc-bugs

https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104040

            Bug ID: 104040
           Summary: linker: when exported template class from module is
                    used in several .cpp with same tpl arg ~ undefined
                    reference to not default non-inline destructor
           Product: gcc
           Version: 12.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: sm0ke999 at yandex dot ru
  Target Milestone: ---

Created attachment 52201
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=52201&action=edit
-save-temps

There is minimal example of two files, using modules:

//lib.cpp
export module test;

export template <typename T>
struct test {
        T v_;

        test(T v) : v_(v) {}

        //inline
        ~test() {}
};

export struct omg {
        using tt = test<bool>;

        static tt go(tt t) {
                return t;
        }
};
//end

//main.cpp
import test;

int main() {
        test<bool> t = false;
        return 0;
}
//end

1. If we remove class omg then all compiles fine.

2. Or if we change "export struct omg { using tt = test<bool>;" to "export
struct omg { using tt = test<int>;" then again all fine.

3. Or if we change "~test() {}" to "inline ~test() {}" then fine.

I think this problem related not only to just destructor, but to any not-inline
method in exported template class.

Here compile messages:

Perform "_build" task:
x86_64-w64-mingw32-g++.exe -v -save-temps -Wall -O3 -std=c++20 -m64 -c
D:\prog\Dropbox\cpp\vs-code/src/lib.cpp -o
D:\prog\Dropbox\cpp\vs-code/obj/src/lib.o -fmodules-ts
Using built-in specs.
COLLECT_GCC=x86_64-w64-mingw32-g++.exe
OFFLOAD_TARGET_NAMES=nvptx-none
Target: x86_64-w64-mingw32
Configured with: ../configure
--prefix=/R/winlibs64_stage/inst_gcc-11.2.0/share/gcc
--build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32
--enable-offload-targets=nvptx-none --with-pkgversion='MinGW-W64
x86_64-ucrt-posix-seh, built by Brecht Sanders' --with-tune=generic
--enable-checking=release --enable-threads=posix --disable-sjlj-exceptions
--disable-libunwind-exceptions --disable-serial-configure --disable-bootstrap
--enable-host-shared --enable-plugin --disable-default-ssp --disable-rpath
--enable-libstdcxx-pch --enable-libstdcxx-time=yes --disable-libstdcxx-debug
--disable-version-specific-runtime-libs --with-stabs --disable-symvers
--enable-languages=c,c++,fortran,lto,objc,obj-c++,d,jit --disable-gold
--disable-nls --disable-stage1-checking --disable-win32-registry
--disable-multilib --enable-ld --enable-libquadmath --enable-libada
--enable-libssp --enable-libstdcxx --enable-lto --enable-fully-dynamic-string
--enable-libgomp --enable-graphite --enable-mingw-wildcard
--with-mpc=/d/Prog/winlibs64_stage/custombuilt
--with-mpfr=/d/Prog/winlibs64_stage/custombuilt
--with-gmp=/d/Prog/winlibs64_stage/custombuilt
--with-isl=/d/Prog/winlibs64_stage/custombuilt --enable-install-libiberty
--enable-__cxa_atexit --without-included-gettext --with-diagnostics-color=auto
--enable-clocale=generic --with-libiconv --with-system-zlib
--with-build-sysroot=/R/winlibs64_stage/gcc-11.2.0/build_mingw/mingw-w64
CFLAGS=-I/d/Prog/winlibs64_stage/custombuilt/include/libdl-win32
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.2.0 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht Sanders)   
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-O3' '-std=c++20' '-m64' '-c'
'-o' 'D:\prog\Dropbox\cpp\vs-code/obj/src/lib.o' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/obj/src/'
 d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/cc1plus.exe -E
-quiet -v -iprefix d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/
-D_REENTRANT D:\prog\Dropbox\cpp\vs-code/src/lib.cpp -m64 -mtune=generic
-march=x86-64 -std=c++20 -Wall -fmodules-ts -O3 -fpch-preprocess -o
D:\prog\Dropbox\cpp\vs-code/obj/src/lib.ii
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0/x86_64-w64-mingw32"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0/backward"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/include"
ignoring nonexistent directory
"R:/winlibs64_stage/inst_gcc-11.2.0/share/gcc/include"
ignoring nonexistent directory
"/R/winlibs64_stage/inst_gcc-11.2.0/share/gcc/include"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/include-fixed"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/include"
ignoring nonexistent directory "/mingw/include"
#include "..." search starts here:
#include <...> search starts here:

d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0

d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0/x86_64-w64-mingw32

d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0/backward
 d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/include
 d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include
 d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/include-fixed

d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/include
End of search list.
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-O3' '-std=c++20' '-m64' '-c'
'-o' 'D:\prog\Dropbox\cpp\vs-code/obj/src/lib.o' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/obj/src/'
 d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/cc1plus.exe
-fpreprocessed D:\prog\Dropbox\cpp\vs-code/obj/src/lib.ii -quiet -dumpdir
D:\prog\Dropbox\cpp\vs-code/obj/src/ -dumpbase lib.cpp -dumpbase-ext .cpp -m64
-mtune=generic -march=x86-64 -O3 -Wall -std=c++20 -version -fmodules-ts -o
D:\prog\Dropbox\cpp\vs-code/obj/src/lib.s
GNU C++20 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht Sanders) version
11.2.0 (x86_64-w64-mingw32)
        compiled by GNU C version 11.2.0, GMP version 6.2.1, MPFR version
4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C++20 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht Sanders) version
11.2.0 (x86_64-w64-mingw32)
        compiled by GNU C version 11.2.0, GMP version 6.2.1, MPFR version
4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 07b662ace814af3cc4c07cbb8046335b
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-O3' '-std=c++20' '-m64' '-c'
'-o' 'D:\prog\Dropbox\cpp\vs-code/obj/src/lib.o' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/obj/src/'

d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/as.exe
-v --64 -o D:\prog\Dropbox\cpp\vs-code/obj/src/lib.o
D:\prog\Dropbox\cpp\vs-code/obj/src/lib.s
GNU assembler version 2.37 (x86_64-w64-mingw32) using BFD version (Binutils for
MinGW-W64 x86_64, built by Brecht Sanders) 2.37
COMPILER_PATH=d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/;d:/prog/mingw64/bin/../libexec/gcc/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/
LIBRARY_PATH=d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/;d:/prog/mingw64/bin/../lib/gcc/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-O3' '-std=c++20' '-m64' '-c'
'-o' 'D:\prog\Dropbox\cpp\vs-code/obj/src/lib.o' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/obj/src/lib.'
x86_64-w64-mingw32-g++.exe -v -save-temps -Wall -O3 -std=c++20 -m64 -c
D:\prog\Dropbox\cpp\vs-code/src/main.cpp -o
D:\prog\Dropbox\cpp\vs-code/obj/src/main.o -fmodules-ts
Using built-in specs.
COLLECT_GCC=x86_64-w64-mingw32-g++.exe
OFFLOAD_TARGET_NAMES=nvptx-none
Target: x86_64-w64-mingw32
Configured with: ../configure
--prefix=/R/winlibs64_stage/inst_gcc-11.2.0/share/gcc
--build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32
--enable-offload-targets=nvptx-none --with-pkgversion='MinGW-W64
x86_64-ucrt-posix-seh, built by Brecht Sanders' --with-tune=generic
--enable-checking=release --enable-threads=posix --disable-sjlj-exceptions
--disable-libunwind-exceptions --disable-serial-configure --disable-bootstrap
--enable-host-shared --enable-plugin --disable-default-ssp --disable-rpath
--enable-libstdcxx-pch --enable-libstdcxx-time=yes --disable-libstdcxx-debug
--disable-version-specific-runtime-libs --with-stabs --disable-symvers
--enable-languages=c,c++,fortran,lto,objc,obj-c++,d,jit --disable-gold
--disable-nls --disable-stage1-checking --disable-win32-registry
--disable-multilib --enable-ld --enable-libquadmath --enable-libada
--enable-libssp --enable-libstdcxx --enable-lto --enable-fully-dynamic-string
--enable-libgomp --enable-graphite --enable-mingw-wildcard
--with-mpc=/d/Prog/winlibs64_stage/custombuilt
--with-mpfr=/d/Prog/winlibs64_stage/custombuilt
--with-gmp=/d/Prog/winlibs64_stage/custombuilt
--with-isl=/d/Prog/winlibs64_stage/custombuilt --enable-install-libiberty
--enable-__cxa_atexit --without-included-gettext --with-diagnostics-color=auto
--enable-clocale=generic --with-libiconv --with-system-zlib
--with-build-sysroot=/R/winlibs64_stage/gcc-11.2.0/build_mingw/mingw-w64
CFLAGS=-I/d/Prog/winlibs64_stage/custombuilt/include/libdl-win32
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.2.0 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht Sanders)
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-O3' '-std=c++20' '-m64' '-c'
'-o' 'D:\prog\Dropbox\cpp\vs-code/obj/src/main.o' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/obj/src/'
 d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/cc1plus.exe -E
-quiet -v -iprefix d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/
-D_REENTRANT D:\prog\Dropbox\cpp\vs-code/src/main.cpp -m64 -mtune=generic
-march=x86-64 -std=c++20 -Wall -fmodules-ts -O3 -fpch-preprocess -o
D:\prog\Dropbox\cpp\vs-code/obj/src/main.ii
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0/x86_64-w64-mingw32"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0/backward"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/include"
ignoring nonexistent directory
"R:/winlibs64_stage/inst_gcc-11.2.0/share/gcc/include"
ignoring nonexistent directory
"/R/winlibs64_stage/inst_gcc-11.2.0/share/gcc/include"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/include-fixed"
ignoring duplicate directory
"d:/prog/mingw64/lib/gcc/../../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/include"
ignoring nonexistent directory "/mingw/include"
#include "..." search starts here:
#include <...> search starts here:

d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0

d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0/x86_64-w64-mingw32

d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include/c++/11.2.0/backward
 d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/include
 d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../include
 d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/include-fixed

d:\prog\mingw64\bin\../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/include
End of search list.
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-O3' '-std=c++20' '-m64' '-c'
'-o' 'D:\prog\Dropbox\cpp\vs-code/obj/src/main.o' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/obj/src/'
 d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/cc1plus.exe
-fpreprocessed D:\prog\Dropbox\cpp\vs-code/obj/src/main.ii -quiet -dumpdir
D:\prog\Dropbox\cpp\vs-code/obj/src/ -dumpbase main.cpp -dumpbase-ext .cpp -m64
-mtune=generic -march=x86-64 -O3 -Wall -std=c++20 -version -fmodules-ts -o
D:\prog\Dropbox\cpp\vs-code/obj/src/main.s
GNU C++20 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht Sanders) version
11.2.0 (x86_64-w64-mingw32)
        compiled by GNU C version 11.2.0, GMP version 6.2.1, MPFR version
4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
GNU C++20 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht Sanders) version
11.2.0 (x86_64-w64-mingw32)
        compiled by GNU C version 11.2.0, GMP version 6.2.1, MPFR version
4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP

GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
Compiler executable checksum: 07b662ace814af3cc4c07cbb8046335b
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-O3' '-std=c++20' '-m64' '-c'
'-o' 'D:\prog\Dropbox\cpp\vs-code/obj/src/main.o' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/obj/src/'

d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/as.exe
-v --64 -o D:\prog\Dropbox\cpp\vs-code/obj/src/main.o
D:\prog\Dropbox\cpp\vs-code/obj/src/main.s
GNU assembler version 2.37 (x86_64-w64-mingw32) using BFD version (Binutils for
MinGW-W64 x86_64, built by Brecht Sanders) 2.37
COMPILER_PATH=d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/;d:/prog/mingw64/bin/../libexec/gcc/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/
LIBRARY_PATH=d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/;d:/prog/mingw64/bin/../lib/gcc/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-Wall' '-O3' '-std=c++20' '-m64' '-c'
'-o' 'D:\prog\Dropbox\cpp\vs-code/obj/src/main.o' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/obj/src/main.'
Perform "_link" task:
x86_64-w64-mingw32-g++.exe -v -save-temps -o
D:\prog\Dropbox\cpp\vs-code/bin/test.exe
D:\prog\Dropbox\cpp\vs-code/obj/src/lib.o
D:\prog\Dropbox\cpp\vs-code/obj/src/main.o -s -m64 -fmodules-ts
Using built-in specs.
COLLECT_GCC=x86_64-w64-mingw32-g++.exe
COLLECT_LTO_WRAPPER=d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/lto-wrapper.exe
OFFLOAD_TARGET_NAMES=nvptx-none
Target: x86_64-w64-mingw32
Configured with: ../configure
--prefix=/R/winlibs64_stage/inst_gcc-11.2.0/share/gcc
--build=x86_64-w64-mingw32 --host=x86_64-w64-mingw32
--enable-offload-targets=nvptx-none --with-pkgversion='MinGW-W64
x86_64-ucrt-posix-seh, built by Brecht Sanders' --with-tune=generic
--enable-checking=release --enable-threads=posix --disable-sjlj-exceptions
--disable-libunwind-exceptions --disable-serial-configure --disable-bootstrap
--enable-host-shared --enable-plugin --disable-default-ssp --disable-rpath
--enable-libstdcxx-pch --enable-libstdcxx-time=yes --disable-libstdcxx-debug
--disable-version-specific-runtime-libs --with-stabs --disable-symvers
--enable-languages=c,c++,fortran,lto,objc,obj-c++,d,jit --disable-gold
--disable-nls --disable-stage1-checking --disable-win32-registry
--disable-multilib --enable-ld --enable-libquadmath --enable-libada
--enable-libssp --enable-libstdcxx --enable-lto --enable-fully-dynamic-string
--enable-libgomp --enable-graphite --enable-mingw-wildcard
--with-mpc=/d/Prog/winlibs64_stage/custombuilt
--with-mpfr=/d/Prog/winlibs64_stage/custombuilt
--with-gmp=/d/Prog/winlibs64_stage/custombuilt
--with-isl=/d/Prog/winlibs64_stage/custombuilt --enable-install-libiberty
--enable-__cxa_atexit --without-included-gettext --with-diagnostics-color=auto
--enable-clocale=generic --with-libiconv --with-system-zlib
--with-build-sysroot=/R/winlibs64_stage/gcc-11.2.0/build_mingw/mingw-w64
CFLAGS=-I/d/Prog/winlibs64_stage/custombuilt/include/libdl-win32
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 11.2.0 (MinGW-W64 x86_64-ucrt-posix-seh, built by Brecht Sanders) 
COMPILER_PATH=d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/;d:/prog/mingw64/bin/../libexec/gcc/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/
LIBRARY_PATH=d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/;d:/prog/mingw64/bin/../lib/gcc/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/;d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-o'
'D:\prog\Dropbox\cpp\vs-code/bin/test.exe' '-s' '-m64' '-fmodules-ts'
'-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir'
'D:\prog\Dropbox\cpp\vs-code/bin/test.'
 d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/collect2.exe
-plugin
d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/liblto_plugin.dll
-plugin-opt=d:/prog/mingw64/bin/../libexec/gcc/x86_64-w64-mingw32/11.2.0/lto-wrapper.exe
-plugin-opt=-fresolution=D:\prog\Dropbox\cpp\vs-code/bin/test.res
-plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s
-plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname
-plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt
-plugin-opt=-pass-through=-lkernel32 -plugin-opt=-pass-through=-lpthread
-plugin-opt=-pass-through=-ladvapi32 -plugin-opt=-pass-through=-lshell32
-plugin-opt=-pass-through=-luser32 -plugin-opt=-pass-through=-lkernel32
-plugin-opt=-pass-through=-lmingw32 -plugin-opt=-pass-through=-lgcc_s
-plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lmoldname
-plugin-opt=-pass-through=-lmingwex -plugin-opt=-pass-through=-lmsvcrt
-plugin-opt=-pass-through=-lkernel32 -m i386pep -Bdynamic -o
D:\prog\Dropbox\cpp\vs-code/bin/test.exe -s
d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib/crt2.o
d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/crtbegin.o
-Ld:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0
-Ld:/prog/mingw64/bin/../lib/gcc
-Ld:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib/../lib
-Ld:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../lib
-Ld:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/lib
-Ld:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../..
D:\prog\Dropbox\cpp\vs-code/obj/src/lib.o
D:\prog\Dropbox\cpp\vs-code/obj/src/main.o -lstdc++ -lmingw32 -lgcc_s -lgcc
-lmoldname -lmingwex -lmsvcrt -lkernel32 -lpthread -ladvapi32 -lshell32
-luser32 -lkernel32 -lmingw32 -lgcc_s -lgcc -lmoldname -lmingwex -lmsvcrt
-lkernel32 d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/crtend.o
d:/prog/mingw64/bin/../lib/gcc/x86_64-w64-mingw32/11.2.0/../../../../x86_64-w64-mingw32/bin/ld.exe:
D:\prog\Dropbox\cpp\vs-code/obj/src/main.o:main.cpp:(.text.startup+0x14):
undefined reference to `test<bool>::~test()'
collect2.exe: error: ld returned 1 exit status

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2024-04-10  1:51 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-15  5:34 [Bug c++/104040] New: linker: when exported template class from module is used in several .cpp with same tpl arg ~ undefined reference to not default non-inline destructor sm0ke999 at yandex dot ru
2024-04-10  1:40 ` [Bug c++/104040] " cvs-commit at gcc dot gnu.org
2024-04-10  1:51 ` nshead at gcc dot gnu.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).