36
36
#include "Naming.h"
38
38
static OptsParser::Option options[] = {
39
{ ACConfig::ACOPT_VERSION, 'V', "version",
39
{ ACConfig::ACOPT_VERSION, "V", "version",
40
40
"\t" "Version information", OptsParser::AT_NONE },
41
{ ACConfig::ACOPT_VERBOSE, 'v', "verbose",
41
{ ACConfig::ACOPT_VERBOSE, "v", "verbose",
42
42
"Level of verbosity (0-9)", OptsParser::AT_MANDATORY },
43
{ ACConfig::ACOPT_COMPILE, 'c', "compile",
43
{ ACConfig::ACOPT_COMPILE, "c", "compile",
44
44
"Name of the input file", OptsParser::AT_MANDATORY },
45
{ ACConfig::ACOPT_OUTPUT, 'o', "output",
45
{ ACConfig::ACOPT_OUTPUT, "o", "output",
46
46
"\t" "Name of the output file", OptsParser::AT_MANDATORY },
47
{ ACConfig::ACOPT_INCLUDE_FILES, 'i', "include_files",
47
{ ACConfig::ACOPT_INCLUDE_FILES, "i", "include_files",
48
48
"Generate manipulated header files", OptsParser::AT_NONE },
49
{ ACConfig::ACOPT_ASPECT_HEADER, 'a', "aspect_header",
49
{ ACConfig::ACOPT_ASPECT_HEADER, "a", "aspect_header",
50
50
"Name of aspect header file or '0'", OptsParser::AT_MANDATORY },
51
{ ACConfig::ACOPT_REPOSITORY, 'r', "repository",
51
{ ACConfig::ACOPT_REPOSITORY, "r", "repository",
52
52
"Name of the project repository", OptsParser::AT_MANDATORY },
53
{ ACConfig::ACOPT_PROBLEM_LOCAL_CLASS, 0, "problem_local_class",
53
{ ACConfig::ACOPT_PROBLEM_LOCAL_CLASS, NULL, "problem_local_class",
54
54
"Back-end does not support local classes correctly", OptsParser::AT_NONE },
55
{ ACConfig::ACOPT_NO_PROBLEM_LOCAL_CLASS, 0, "no_problem_local_class",
55
{ ACConfig::ACOPT_NO_PROBLEM_LOCAL_CLASS, NULL, "no_problem_local_class",
56
56
"Back-end supports local classes correctly", OptsParser::AT_NONE },
57
{ ACConfig::ACOPT_PROBLEM_SPEC_SCOPE, 0,
57
{ ACConfig::ACOPT_PROBLEM_SPEC_SCOPE, NULL,
58
58
"problem_spec_scope",
59
59
"Back-end does not support template specialization in non-namespace",
60
60
OptsParser::AT_NONE },
61
{ ACConfig::ACOPT_NO_PROBLEM_SPEC_SCOPE, 0,
61
{ ACConfig::ACOPT_NO_PROBLEM_SPEC_SCOPE, NULL,
62
62
"no_problem_spec_scope",
63
63
"Back-end supports template specialization in non-namespace scope",
64
64
OptsParser::AT_NONE },
65
{ ACConfig::ACOPT_NOLINE, 0,
65
{ ACConfig::ACOPT_PROBLEM_FORCE_INLINE, NULL, "problem_force_inline",
66
"Back-end does not support forced inlining correctly", OptsParser::AT_NONE },
67
{ ACConfig::ACOPT_NO_PROBLEM_FORCE_INLINE, NULL, "no_problem_force_inline",
68
"Back-end supports forced inlining correctly", OptsParser::AT_NONE },
69
{ ACConfig::ACOPT_NOLINE, NULL,
67
71
"\t" "\t" "Don't generate #line directives",
68
72
OptsParser::AT_NONE },
69
{ ACConfig::ACOPT_GEN_SIZE_TYPE, 0, "gen_size_type",
70
"argument type for generated new operator", OptsParser::AT_MANDATORY },
71
{ ACConfig::ACOPT_PROJ_FILE, 0, "proj_file",
73
{ ACConfig::ACOPT_GEN_SIZE_TYPE, NULL, "gen_size_type",
74
"Argument type for generated new operator", OptsParser::AT_MANDATORY },
75
{ ACConfig::ACOPT_PROJ_FILE, NULL, "proj_file",
72
76
"\t" "Path to the project file", OptsParser::AT_MANDATORY},
73
{ ACConfig::ACOPT_WARN_DEPRECATED, 0, "warn_deprecated",
77
{ ACConfig::ACOPT_WARN_DEPRECATED, NULL, "warn_deprecated",
74
78
"\t" "Warn if deprecated syntax is used", OptsParser::AT_NONE },
75
{ ACConfig::ACOPT_NO_WARN_DEPRECATED, 0, "no_warn_deprecated",
79
{ ACConfig::ACOPT_NO_WARN_DEPRECATED, NULL, "no_warn_deprecated",
76
80
"Don't warn if deprecated syntax is used", OptsParser::AT_NONE },
77
{ ACConfig::ACOPT_WARN_MACRO, 0, "warn_macro",
81
{ ACConfig::ACOPT_WARN_MACRO, NULL, "warn_macro",
78
82
"\t" "Warn if a macro transformation had to be ignored",
79
83
OptsParser::AT_NONE },
80
{ ACConfig::ACOPT_NO_WARN_MACRO, 0, "no_warn_macro",
84
{ ACConfig::ACOPT_NO_WARN_MACRO, NULL, "no_warn_macro",
81
85
"\t" "Don't warn if a macro transformation had to be ignored",
82
86
OptsParser::AT_NONE },
83
{ ACConfig::ACOPT_KEYWORDS, 'k', "keywords",
87
{ ACConfig::ACOPT_KEYWORDS, "k", "keywords",
84
88
"\t" "Allow AspectC++ keywords in normal project files",
85
89
OptsParser::AT_NONE },
86
{ 0, 0, 0, 0, OptsParser::AT_NONE }
90
{ ACConfig::ACOPT_DYNAMIC, 0, "dynamic",
91
"\t\t" "Prepare generated code for dynamic weaving",
92
OptsParser::AT_NONE },
93
{ 0, NULL, 0, 0, OptsParser::AT_NONE }