// symbols.
Read_symbols(const General_options& options, Input_objects* input_objects,
Symbol_table* symtab, Layout* layout, const Dirsearch& dirpath,
- const Input_argument& input, Input_group* input_group,
+ const Input_argument* input_argument, Input_group* input_group,
Task_token* this_blocker, Task_token* next_blocker)
: options_(options), input_objects_(input_objects), symtab_(symtab),
- layout_(layout), dirpath_(dirpath), input_(input),
+ layout_(layout), dirpath_(dirpath), input_argument_(input_argument),
input_group_(input_group), this_blocker_(this_blocker),
next_blocker_(next_blocker)
{ }
Symbol_table* symtab_;
Layout* layout_;
const Dirsearch& dirpath_;
- const Input_argument& input_;
+ const Input_argument* input_argument_;
Input_group* input_group_;
Task_token* this_blocker_;
Task_token* next_blocker_;
// THIS_BLOCKER is used to prevent this task from running before the
// one for the previous input file. NEXT_BLOCKER is used to prevent
// the next task from running.
- Add_symbols(Input_objects* input_objects, Symbol_table* symtab,
- Layout* layout, Object* object, Read_symbols_data* sd,
- Task_token* this_blocker, Task_token* next_blocker)
- : input_objects_(input_objects), symtab_(symtab), layout_(layout),
- object_(object), sd_(sd), this_blocker_(this_blocker),
+ Add_symbols(const General_options& options, Input_objects* input_objects,
+ Symbol_table* symtab, Layout* layout, Object* object,
+ Read_symbols_data* sd, Task_token* this_blocker,
+ Task_token* next_blocker)
+ : options_(options), input_objects_(input_objects), symtab_(symtab),
+ layout_(layout), object_(object), sd_(sd), this_blocker_(this_blocker),
next_blocker_(next_blocker)
{ }
private:
class Add_symbols_locker;
+ const General_options& options_;
Input_objects* input_objects_;
Symbol_table* symtab_;
Layout* layout_;
class Finish_group : public Task
{
public:
- Finish_group(Input_objects* input_objects, Symbol_table* symtab,
- Layout* layout, Input_group* input_group,
+ Finish_group(const General_options& options, Input_objects* input_objects,
+ Symbol_table* symtab, Layout* layout, Input_group* input_group,
int saw_undefined, Task_token* this_blocker,
Task_token* next_blocker)
- : input_objects_(input_objects), symtab_(symtab), layout_(layout),
- input_group_(input_group), saw_undefined_(saw_undefined),
- this_blocker_(this_blocker), next_blocker_(next_blocker)
+ : options_(options), input_objects_(input_objects), symtab_(symtab),
+ layout_(layout), input_group_(input_group),
+ saw_undefined_(saw_undefined), this_blocker_(this_blocker),
+ next_blocker_(next_blocker)
{ }
~Finish_group();
run(Workqueue*);
private:
+ const General_options& options_;
Input_objects* input_objects_;
Symbol_table* symtab_;
Layout* layout_;