search for: decl_interface_known

Displaying 5 results from an estimated 5 matches for "decl_interface_known".

2009 Dec 04
4
[LLVMdev] r72619
...ght be happening. The logic to suppress instantiation based on an extern template is in instantiate_decl (gcc/cp/pt.c): /* Check to see whether we know that this template will be instantiated in some other file, as with "extern template" extension. */ external_p = (DECL_INTERFACE_KNOWN (d) && DECL_REALLY_EXTERN (d)); /* In general, we do not instantiate such templates... */ if (external_p /* ... but we instantiate inline functions so that we can inline them and ... */ && ! (TREE_CODE (d) == FUNCTION_DECL && DECL_INLINE (d))...
2009 Dec 04
0
[LLVMdev] r72619
...gic to suppress instantiation based on an extern > template is in instantiate_decl (gcc/cp/pt.c): > > /* Check to see whether we know that this template will be > instantiated in some other file, as with "extern template" > extension. */ > external_p = (DECL_INTERFACE_KNOWN (d) && DECL_REALLY_EXTERN (d)); > /* In general, we do not instantiate such templates... */ > if (external_p > /* ... but we instantiate inline functions so that we can inline > them and ... */ > && ! (TREE_CODE (d) == FUNCTION_DECL &&amp...
2009 Dec 04
0
[LLVMdev] r72619
Hi Bill, > Here's what I get with TOT compiling with -Os. The orig.ll is what I get > before r72619. Notice that orig.ll has only one function in it. Both the > one you sent and duncan.ll have more than one function. It's not the > fact that more than one function is showing up, but these functions in > particular shouldn't be there because of the implicit/explicit
2009 Dec 04
2
[LLVMdev] r72619
...nstantiation based on an extern >> template is in instantiate_decl (gcc/cp/pt.c): >> >> /* Check to see whether we know that this template will be >> instantiated in some other file, as with "extern template" >> extension. */ >> external_p = (DECL_INTERFACE_KNOWN (d) && DECL_REALLY_EXTERN (d)); >> /* In general, we do not instantiate such templates... */ >> if (external_p >> /* ... but we instantiate inline functions so that we can inline >> them and ... */ >> && ! (TREE_CODE (d) == FUNCTION...
2009 Dec 04
2
[LLVMdev] r72619
On Dec 4, 2009, at 12:52 AM, Duncan Sands wrote: > Hi Bill, > >> There's a problem with your check-in for r72619 is causing "weak >> external" symbols to appear in C++ code when it shouldn't. Take >> this code for example, >> #include <stdexcept> >> void dummysymbol() { >> throw(std::runtime_error("string"));