diff options
author | Christian Poveda <christian.poveda@ferrous-systems.com> | 2022-09-23 21:36:14 -0500 |
---|---|---|
committer | Christian Poveda <christian.poveda@ferrous-systems.com> | 2022-10-04 20:47:17 -0500 |
commit | 0296f9e86c7756e718b6b82836ce1e09b5f8d08a (patch) | |
tree | b5954c6680b243c0b1671a80ea973ef90877e462 /tests/headers/sentry-defined-multiple-times.hpp | |
parent | a900f8f863d1313ad76603234aaeea22bb9ba7b3 (diff) |
split the repo into a workspace
remove `clap` dependency :tada:
update the book installation instructions
Diffstat (limited to 'tests/headers/sentry-defined-multiple-times.hpp')
-rw-r--r-- | tests/headers/sentry-defined-multiple-times.hpp | 85 |
1 files changed, 0 insertions, 85 deletions
diff --git a/tests/headers/sentry-defined-multiple-times.hpp b/tests/headers/sentry-defined-multiple-times.hpp deleted file mode 100644 index d44837d0..00000000 --- a/tests/headers/sentry-defined-multiple-times.hpp +++ /dev/null @@ -1,85 +0,0 @@ -// bindgen-flags: --enable-cxx-namespaces -- -std=c++11 - -// `Wrapper::sentry` and `sentry` should be emitted as `Wrapper_sentry` and -// `sentry` respectively, but instead `Wrapper::sentry` is named just `sentry` -// which leads to compilation errors. -// -// Note: if there is no namespace, then we don't run into problems. Similarly, -// making the `Wrapper::sentry` definition inline in `Wrapper`, rather than -// declared inline with an out of line definition, makes the problem go away as -// well. - -namespace whatever { - template <typename, typename> - class Wrapper { - // Declaration of Wrapper::sentry - class sentry; - }; - - // Definition of Wrapper::sentry - template <typename f, typename h> - class Wrapper<f, h>::sentry { - int i_am_wrapper_sentry; - }; - - class sentry { - bool i_am_plain_sentry; - }; - - // Ok, that was the original bug report. While we're here, let's just try - // lots of different things that could go wrong and make sure we handle them - // right. - - class NotTemplateWrapper { - class sentry; - }; - - class NotTemplateWrapper::sentry { - char i_am_not_template_wrapper_sentry; - }; - - class InlineNotTemplateWrapper { - class sentry { - bool i_am_inline_not_template_wrapper_sentry; - }; - }; - - template <typename, typename> - class InlineTemplateWrapper { - class sentry { - int i_am_inline_template_wrapper_sentry; - }; - }; - - class OuterDoubleWrapper { - class InnerDoubleWrapper { - class sentry; - }; - }; - - class OuterDoubleWrapper::InnerDoubleWrapper::sentry { - int i_am_double_wrapper_sentry; - }; - - class OuterDoubleInlineWrapper { - class InnerDoubleInlineWrapper { - class sentry { - int i_am_double_wrapper_inline_sentry; - }; - }; - }; -} - -template <typename, typename> -class OutsideNamespaceWrapper { - class sentry; -}; - -template <typename f, typename h> -class OutsideNamespaceWrapper<f, h>::sentry { - int i_am_outside_namespace_wrapper_sentry; -}; - -class sentry { - int i_am_outside_namespace_sentry; -}; |