swig/Examples/test-suite/errors
Olly Betts 467c530e65 Remove support for the "command" encoder
The "command" encoder was mostly intended for use in `%rename` - most
uses can be achieved using the "regex" encoder, so we recommend using
that instead.

The "command" encoder suffers from a number of issues - as the
documentation for it admitted, "[it] is extremely slow compared to all
the other [encoders] as it involves spawning a separate process and
using it for many declarations is not recommended" and that it "should
generally be avoided because of performance considerations".

But it's also not portable.  The design assumes that `/bin/sh` supports
`<<<` but that's a bash-specific feature so it doesn't work on platforms
where `/bin/sh` is not bash - it fails on Debian, Ubuntu and probably
some other Linux distros, plus most non-Linux platforms.  Microsoft
Windows doesn't even have a /bin/sh as standard.

Finally, no escaping of the passed string is done, so it has potential
security issues (though at least with %rename the input is limited to
valid C/C++ symbol names).

Fixes #1806
2022-02-07 09:47:01 +13:00
..
c_bad_name.i The great merge 2002-11-30 22:01:28 +00:00
c_bad_name.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_bad_native.i The great merge 2002-11-30 22:01:28 +00:00
c_bad_native.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_class.i The great merge 2002-11-30 22:01:28 +00:00
c_class.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_deprecated.i The great merge 2002-11-30 22:01:28 +00:00
c_deprecated.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_empty_char.i The great merge 2002-11-30 22:01:28 +00:00
c_empty_char.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_enum_badvalue.i The great merge 2002-11-30 22:01:28 +00:00
c_enum_badvalue.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_extra_rblock.i The great merge 2002-11-30 22:01:28 +00:00
c_extra_rblock.stderr Improve error message for extraneous '%}'. 2015-01-08 12:47:12 +13:00
c_extra_rbrace.i The great merge 2002-11-30 22:01:28 +00:00
c_extra_rbrace.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_extra_unsigned.i The great merge 2002-11-30 22:01:28 +00:00
c_extra_unsigned.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_insert_missing.i The great merge 2002-11-30 22:01:28 +00:00
c_insert_missing.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_long_short.i The great merge 2002-11-30 22:01:28 +00:00
c_long_short.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_missing_rbrace.i The great merge 2002-11-30 22:01:28 +00:00
c_missing_rbrace.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_missing_semi.i The great merge 2002-11-30 22:01:28 +00:00
c_missing_semi.stderr Wording change for missing semicolon error 2015-01-08 23:37:52 +00:00
c_redefine.i The great merge 2002-11-30 22:01:28 +00:00
c_redefine.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
c_varargs_neg.i The great merge 2002-11-30 22:01:28 +00:00
c_varargs_neg.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_bad_extern.i The great merge 2002-11-30 22:01:28 +00:00
cpp_bad_extern.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_bad_global_memberptr.i Fix seg fault for global declarations declared erroneously without a name 2017-03-10 23:25:31 +00:00
cpp_bad_global_memberptr.stderr Fix seg fault for global declarations declared erroneously without a name 2017-03-10 23:25:31 +00:00
cpp_class_definition.i %template scope enforcement and class definition fixes 2017-08-16 00:24:25 +01:00
cpp_class_definition.stderr %template scope enforcement and class definition fixes 2017-08-16 00:24:25 +01:00
cpp_extend_destructors.i Add warnings for badly named destructors. Fix %extend and destructors for templates - they weren't always being wrapped. Fix destructor "name" attribute. 2011-09-13 06:15:29 +00:00
cpp_extend_destructors.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_extend_redefine.i The great merge 2002-11-30 22:01:28 +00:00
cpp_extend_redefine.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_extend_undefined.i The great merge 2002-11-30 22:01:28 +00:00
cpp_extend_undefined.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_extra_brackets.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_extra_brackets.stderr Improve errors for missing ; and unexpected ) 2015-01-08 15:27:57 +13:00
cpp_extra_brackets2.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_extra_brackets2.stderr Fix seg fault with extra ) brackets and >> 2014-04-08 19:19:44 +01:00
cpp_final_destructor.stderr Warning tweaks for destructors that are final in director classes 2019-03-03 15:12:29 +00:00
cpp_inherit.i Add new warning if an empty template declaration is used on a base class, minor docs improvement for empty template declarations. 2012-09-14 22:25:35 +00:00
cpp_inherit.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_inherit_ignored.i Don't issue unnecessary base class ignored message 2016-05-02 22:50:09 +01:00
cpp_inherit_ignored.stderr Don't issue unnecessary base class ignored message 2016-05-02 22:50:09 +01:00
cpp_inline_namespace.i The great merge 2002-11-30 22:01:28 +00:00
cpp_inline_namespace.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_invalid_exponents1.i Fix seg fault parsing invalid exponents 2018-01-14 19:36:09 +00:00
cpp_invalid_exponents1.stderr Fix seg fault parsing invalid exponents 2018-01-14 19:36:09 +00:00
cpp_invalid_exponents2.i Fix seg fault parsing invalid exponents 2018-01-14 19:36:09 +00:00
cpp_invalid_exponents2.stderr Fix seg fault parsing invalid exponents 2018-01-14 19:36:09 +00:00
cpp_invalid_qualifiers.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_invalid_qualifiers.stderr Add error for constructors, destructors, static methods declared with qualifiers 2017-08-30 18:17:05 +01:00
cpp_invalid_template.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_invalid_template.stderr Test a few %template errors 2017-08-16 00:24:25 +01:00
cpp_macro_locator.i Suppress warning 325 "Nested class not currently supported (Foo 2015-05-05 18:07:49 +12:00
cpp_macro_locator.stderr error order foxed 2014-02-05 02:30:48 +04:00
cpp_missing_rparenthesis.i Fix garbage line number and empty file name reporting for some '}' or ')' error messages 2012-12-16 13:56:50 +00:00
cpp_missing_rparenthesis.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_missing_rtemplate.i The great merge 2002-11-30 22:01:28 +00:00
cpp_missing_rtemplate.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_namespace_alias.i The great merge 2002-11-30 22:01:28 +00:00
cpp_namespace_alias.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_namespace_aliasnot.i The great merge 2002-11-30 22:01:28 +00:00
cpp_namespace_aliasnot.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_namespace_aliasundef.i The great merge 2002-11-30 22:01:28 +00:00
cpp_namespace_aliasundef.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_namespace_template_bad.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_namespace_template_bad.stderr %template scope enforcement and class definition fixes 2017-08-16 00:24:25 +01:00
cpp_namewarn.i Suppress incorrect warning when a keyword is used in template classes 2016-12-20 19:44:57 +00:00
cpp_namewarn.stderr Suppress incorrect warning when a keyword is used in template classes 2016-12-20 19:44:57 +00:00
cpp_nested_namespace_alias.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_nested_namespace_alias.stderr Test for invalid C++17 nested namespace aliases 2018-05-14 21:03:31 +01:00
cpp_nested_template.i Error test-suite updated for nested changes 2013-12-19 18:23:28 +00:00
cpp_nested_template.stderr %template scope enforcement and class definition fixes 2017-08-16 00:24:25 +01:00
cpp_no_access.i The great merge 2002-11-30 22:01:28 +00:00
cpp_no_access.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_no_return_type.i Fix constructors in named typedef class declarations 2011-08-25 19:27:38 +00:00
cpp_no_return_type.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_nobase.i The great merge 2002-11-30 22:01:28 +00:00
cpp_nobase.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_overload_const.i Fix partial overloading warning messages appearing 2011-03-11 22:36:59 +00:00
cpp_overload_const.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_private_inherit.i The great merge 2002-11-30 22:01:28 +00:00
cpp_private_inherit.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_raw_string_termination.i Fix seg fault parsing unterminated raw string literals 2017-02-09 22:02:20 +00:00
cpp_raw_string_termination.stderr Fix seg fault parsing unterminated raw string literals 2017-02-09 22:02:20 +00:00
cpp_recursive_typedef.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_recursive_typedef.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_refqualifier.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_refqualifier.stderr Improve ref-qualifier implementation 2017-08-30 18:17:04 +01:00
cpp_shared_ptr.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_shared_ptr.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_template_duplicate_names.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_template_duplicate_names.stderr Allow an instantiated template to have the same name as the C++ template name 2017-09-29 23:28:04 +01:00
cpp_template_explicit_instantiation.i Extern template tweaks 2022-01-25 00:28:08 +00:00
cpp_template_explicit_instantiation.stderr Extern template tweaks 2022-01-25 00:28:08 +00:00
cpp_template_friend.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
cpp_template_friend.stderr Add support for friend templates, including operator overloading. 2015-05-05 06:48:25 +01:00
cpp_template_nargs.i The great merge 2002-11-30 22:01:28 +00:00
cpp_template_nargs.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_template_not.i The great merge 2002-11-30 22:01:28 +00:00
cpp_template_not.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_template_partial.i The great merge 2002-11-30 22:01:28 +00:00
cpp_template_partial.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_template_repeat.i Add comment about cpp_template_repeat testcase 2016-06-01 21:25:25 +01:00
cpp_template_repeat.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_template_scope.i %template scope enforcement and class definition fixes 2017-08-16 00:24:25 +01:00
cpp_template_scope.stderr %template scope enforcement and class definition fixes 2017-08-16 00:24:25 +01:00
cpp_template_undef.i The great merge 2002-11-30 22:01:28 +00:00
cpp_template_undef.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_using_not.i The great merge 2002-11-30 22:01:28 +00:00
cpp_using_not.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
cpp_using_undef.i The great merge 2002-11-30 22:01:28 +00:00
cpp_using_undef.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
doxygen_unclosed_tag.i [doxygen] Fix crash on unclosed HTML tag 2022-01-26 15:12:21 +13:00
doxygen_unclosed_tag.stderr [doxygen] Fix crash on unclosed HTML tag 2022-01-26 15:12:21 +13:00
doxygen_unknown_command.i Give warnings for unknown Doxygen commands in Doxygen parser. 2014-09-03 17:28:10 +02:00
doxygen_unknown_command.stderr Doxygen warnings cleanup 2018-06-05 18:40:30 +01:00
Makefile.in The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
nomodule.i The great merge 2002-11-30 22:01:28 +00:00
nomodule.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_badeval.i The great merge 2002-11-30 22:01:28 +00:00
pp_badeval.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_constant.i Disable case in pp_constant.i which never actually worked 2014-09-03 17:18:11 -03:00
pp_constant.stderr Update expected output for pp_constant error test 2014-09-04 09:29:20 -03:00
pp_defined.i The great merge 2002-11-30 22:01:28 +00:00
pp_defined.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_deprecated.i Add some more preprocessor tests 2010-09-06 18:10:43 +00:00
pp_deprecated.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_expressions_bad.i Don't accept some invalid preprocessor code 2018-01-16 08:07:37 +00:00
pp_expressions_bad.stderr Don't accept some invalid preprocessor code 2018-01-16 08:07:37 +00:00
pp_illegal_argument.i Add some more preprocessor tests 2010-09-06 18:10:43 +00:00
pp_illegal_argument.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_invalid_exponents.i Fix seg fault parsing invalid exponents 2018-01-14 19:36:09 +00:00
pp_invalid_exponents.stderr Fix seg fault parsing invalid exponents 2018-01-14 19:36:09 +00:00
pp_macro_badchar.i The great merge 2002-11-30 22:01:28 +00:00
pp_macro_badchar.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_defined_unterminated.i Fix line numbering for 'Unterminated call invoking macro' error 2010-09-06 17:30:18 +00:00
pp_macro_defined_unterminated.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_expansion.i Add test for line number reporting for multiple macro expansions 2010-09-06 18:25:22 +00:00
pp_macro_expansion.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_expansion_multiline.i Fix incorrect line number reporting in errors/warnings after parsing macro invocations with parameters given over more than one line. 2010-09-10 23:44:27 +00:00
pp_macro_expansion_multiline.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_inline_unterminated.i Fix #2149523 - Incorrect line number reporting in errors after parsing macros. Remove extraneous extra line in preprocessed output which would sometimes lead to error/warning messages two lines after the end of the file 2010-09-10 06:08:45 +00:00
pp_macro_inline_unterminated.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_missing_expression.i Misc. typos 2018-05-17 10:04:23 -04:00
pp_macro_missing_expression.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_nargs.i The great merge 2002-11-30 22:01:28 +00:00
pp_macro_nargs.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_redef.i The great merge 2002-11-30 22:01:28 +00:00
pp_macro_redef.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_rparen.i The great merge 2002-11-30 22:01:28 +00:00
pp_macro_rparen.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_unexpected_tokens.i Preprocessing now errors out if extra tokens appear after #else and #end. Add preprocessor errors when preprocessor expressions are missing 2011-02-16 20:48:48 +00:00
pp_macro_unexpected_tokens.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_macro_unterminated.i The great merge 2002-11-30 22:01:28 +00:00
pp_macro_unterminated.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_misplaced_elif.i The great merge 2002-11-30 22:01:28 +00:00
pp_misplaced_elif.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_misplaced_else.i The great merge 2002-11-30 22:01:28 +00:00
pp_misplaced_else.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_missing_enddef.i The great merge 2002-11-30 22:01:28 +00:00
pp_missing_enddef.stderr When reporting an error for a construct which hasn't been terminated 2015-01-08 13:19:17 +13:00
pp_missing_endif.i The great merge 2002-11-30 22:01:28 +00:00
pp_missing_endif.stderr When reporting an error for a construct which hasn't been terminated 2015-01-08 13:19:17 +13:00
pp_missing_endoffile.i When reporting an error for a construct which hasn't been terminated 2015-01-08 13:19:17 +13:00
pp_missing_endoffile.stderr When reporting an error for a construct which hasn't been terminated 2015-01-08 13:19:17 +13:00
pp_missing_file.i The errors testcases use -module to obtain a unique module name 2019-07-31 00:08:49 +01:00
pp_missing_file.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_missing_rblock.i The great merge 2002-11-30 22:01:28 +00:00
pp_missing_rblock.stderr When reporting an error for a construct which hasn't been terminated 2015-01-08 13:19:17 +13:00
pp_pragma.i Add some more preprocessor tests 2010-09-06 18:10:43 +00:00
pp_pragma.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
pp_unknowndirective.i Add regression test for 6b6b360 2015-03-28 11:26:13 +13:00
pp_unknowndirective.stderr Add regression test for 6b6b360 2015-03-28 11:26:13 +13:00
pp_unknowndirective2.i Adjust testcase for unknown directive error 2015-04-30 15:27:12 +12:00
pp_unknowndirective2.stderr Add suggestion to check block delimiter 2015-01-14 16:08:08 +13:00
pp_unknowndirective3.i Fix regression parsing gcc preprocessor linemarkers 2019-02-19 21:32:04 +00:00
pp_unknowndirective3.stderr Fix regression parsing gcc preprocessor linemarkers 2019-02-19 21:32:04 +00:00
pp_unterm_char.i The great merge 2002-11-30 22:01:28 +00:00
pp_unterm_char.stderr When reporting an error for a construct which hasn't been terminated 2015-01-08 13:19:17 +13:00
pp_unterm_comment.i The great merge 2002-11-30 22:01:28 +00:00
pp_unterm_comment.stderr When reporting an error for a construct which hasn't been terminated 2015-01-08 13:19:17 +13:00
pp_unterm_string.i The great merge 2002-11-30 22:01:28 +00:00
pp_unterm_string.stderr When reporting an error for a construct which hasn't been terminated 2015-01-08 13:19:17 +13:00
pp_unterminated_block.i Add test coverage for unterminated %{ ... %} block 2015-01-08 13:26:39 +13:00
pp_unterminated_block.stderr Add test coverage for unterminated %{ ... %} block 2015-01-08 13:26:39 +13:00
pp_variable_args.i Add some more preprocessor tests 2010-09-06 18:10:43 +00:00
pp_variable_args.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
swig_apply_nargs.i The great merge 2002-11-30 22:01:28 +00:00
swig_apply_nargs.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
swig_command_encoder.i Remove support for the "command" encoder 2022-02-07 09:47:01 +13:00
swig_command_encoder.stderr Remove support for the "command" encoder 2022-02-07 09:47:01 +13:00
swig_constant_missing_semi.i Issue error for missing ; after %constant 2022-01-27 15:35:24 +13:00
swig_constant_missing_semi.stderr Issue error for missing ; after %constant 2022-01-27 15:35:24 +13:00
swig_extend.i Fix C code where a typedef name was used for constructor and destructor names in %extend. Deprecate use of typedef names for constructor and destructor names going forwards. 2013-02-18 22:40:42 +00:00
swig_extend.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
swig_fragment_missing.i Fix missing fragment name in warning message about missing fragment 2014-02-22 01:04:50 +00:00
swig_fragment_missing.stderr Fix missing fragment name in warning message about missing fragment 2014-02-22 01:04:50 +00:00
swig_identifier.i The great merge 2002-11-30 22:01:28 +00:00
swig_identifier.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
swig_insert_bad.i The great merge 2002-11-30 22:01:28 +00:00
swig_insert_bad.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
swig_pythoncode_bad.i Improve handling of whitespace in %pythoncode 2015-06-29 22:12:38 +12:00
swig_pythoncode_bad.stderr Improve python code indentation warning / error messages 2015-07-30 08:26:17 +01:00
swig_pythoncode_bad2.i Improve handling of whitespace in %pythoncode 2015-06-29 22:12:38 +12:00
swig_pythoncode_bad2.stderr Improve python code indentation warning / error messages 2015-07-30 08:26:17 +01:00
swig_pythoncode_bad3.i Improve python code indentation warning / error messages 2015-07-30 08:26:17 +01:00
swig_pythoncode_bad3.stderr Improve python code indentation warning / error messages 2015-07-30 08:26:17 +01:00
swig_typemap_copy.i The great merge 2002-11-30 22:01:28 +00:00
swig_typemap_copy.stderr Errors test-suite overhaul 2014-01-19 00:12:12 +00:00
swig_typemap_old.i The great merge 2002-11-30 22:01:28 +00:00
swig_typemap_old.stderr Remove support for $source and $target 2021-04-30 10:20:14 +12:00
swig_typemap_warn.i Expand special variables in typemap warnings - rework implementation 2011-11-03 20:31:35 +00:00
swig_typemap_warn.stderr Suppress rename warnings when parameter names are keywords 2019-01-19 19:52:34 +00:00