mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2026-09-03 20:52:55 -05:00
C++, add support for template introductions.
Thanks to mickk-on-cpp.
This commit is contained in:
@@ -410,6 +410,36 @@ def test_templates():
|
||||
None, "I00ElsRNSt13basic_ostreamI4Char6TraitsEE"
|
||||
"RK18c_string_view_baseIK4Char6TraitsE")
|
||||
|
||||
# template introductions
|
||||
raises(DefinitionError, parse, 'enum', 'abc::ns::foo{id_0, id_1, id_2} A')
|
||||
raises(DefinitionError, parse, 'enumerator', 'abc::ns::foo{id_0, id_1, id_2} A')
|
||||
check('class', 'abc::ns::foo{id_0, id_1, id_2} xyz::bar',
|
||||
None, 'I000EMissingRequiresManglingN3xyz3barE')
|
||||
check('class', 'abc::ns::foo{id_0, id_1, ...id_2} xyz::bar',
|
||||
None, 'I00DpEMissingRequiresManglingN3xyz3barE')
|
||||
check('class', 'abc::ns::foo{id_0, id_1, id_2} xyz::bar<id_0, id_1, id_2>',
|
||||
None, 'I000EMissingRequiresManglingN3xyz3barI4id_04id_14id_2EE')
|
||||
check('class', 'abc::ns::foo{id_0, id_1, ...id_2} xyz::bar<id_0, id_1, id_2...>',
|
||||
None, 'I00DpEMissingRequiresManglingN3xyz3barI4id_04id_1Dp4id_2EE')
|
||||
|
||||
check('class', 'template<> Concept{U} A<int>::B',
|
||||
None, 'IEI0EMissingRequiresManglingN1AIiE1BE')
|
||||
|
||||
check('type', 'abc::ns::foo{id_0, id_1, id_2} xyz::bar = ghi::qux',
|
||||
None, 'I000EMissingRequiresManglingN3xyz3barE')
|
||||
check('type', 'abc::ns::foo{id_0, id_1, ...id_2} xyz::bar = ghi::qux',
|
||||
None, 'I00DpEMissingRequiresManglingN3xyz3barE')
|
||||
check('function', 'abc::ns::foo{id_0, id_1, id_2} void xyz::bar()',
|
||||
None, 'I000EMissingRequiresManglingN3xyz3barEv')
|
||||
check('function', 'abc::ns::foo{id_0, id_1, ...id_2} void xyz::bar()',
|
||||
None, 'I00DpEMissingRequiresManglingN3xyz3barEv')
|
||||
check('member', 'abc::ns::foo{id_0, id_1, id_2} ghi::qux xyz::bar',
|
||||
None, 'I000EMissingRequiresManglingN3xyz3barE')
|
||||
check('member', 'abc::ns::foo{id_0, id_1, ...id_2} ghi::qux xyz::bar',
|
||||
None, 'I00DpEMissingRequiresManglingN3xyz3barE')
|
||||
check('concept', 'Iterator{T, U} Another',
|
||||
None, 'I00EMissingRequiresMangling7Another')
|
||||
|
||||
|
||||
#def test_print():
|
||||
# # used for getting all the ids out for checking
|
||||
|
||||
Reference in New Issue
Block a user