@@ -64,28 +64,28 @@ class AvgAggNode final : public AggNode
6464
6565 static DmlNode* parse (thread_db* tdbb, MemoryPool& pool, CompilerScratch* csb, const UCHAR blrOp);
6666
67- virtual const char * getCompatDialectVerb ()
67+ const char * getCompatDialectVerb () override
6868 {
6969 return " avg" ;
7070 }
7171
72- virtual unsigned getCapabilities () const
72+ unsigned getCapabilities () const override
7373 {
7474 return CAP_RESPECTS_WINDOW_FRAME | CAP_WANTS_AGG_CALLS;
7575 }
7676
77- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
78- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
79- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
80- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
81- virtual AggNode* pass2 (thread_db* tdbb, CompilerScratch* csb);
77+ Firebird::string internalPrint (NodePrinter& printer) const override ;
78+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
79+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
80+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
81+ AggNode* pass2 (thread_db* tdbb, CompilerScratch* csb) override ;
8282
83- virtual void aggInit (thread_db* tdbb, Request* request) const ;
84- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
85- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
83+ void aggInit (thread_db* tdbb, Request* request) const override ;
84+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
85+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
8686
8787protected:
88- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
88+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
8989
9090private:
9191 void outputDesc (dsc* desc) const ;
@@ -100,30 +100,30 @@ class ListAggNode final : public AggNode
100100
101101 static DmlNode* parse (thread_db* tdbb, MemoryPool& pool, CompilerScratch* csb, const UCHAR blrOp);
102102
103- virtual unsigned getCapabilities () const
103+ unsigned getCapabilities () const override
104104 {
105105 return CAP_WANTS_AGG_CALLS;
106106 }
107107
108- virtual void getChildren (NodeRefsHolder& holder, bool dsql) const
108+ void getChildren (NodeRefsHolder& holder, bool dsql) const override
109109 {
110110 AggNode::getChildren (holder, dsql);
111111 holder.add (delimiter);
112112 }
113113
114- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
115- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
116- virtual bool setParameterType (DsqlCompilerScratch* dsqlScratch,
117- std::function<void (dsc*)> makeDesc, bool forceVarChar);
118- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
119- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
114+ Firebird::string internalPrint (NodePrinter& printer) const override ;
115+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
116+ bool setParameterType (DsqlCompilerScratch* dsqlScratch,
117+ std::function<void (dsc*)> makeDesc, bool forceVarChar) override ;
118+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
119+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
120120
121- virtual void aggInit (thread_db* tdbb, Request* request) const ;
122- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
123- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
121+ void aggInit (thread_db* tdbb, Request* request) const override ;
122+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
123+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
124124
125125protected:
126- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
126+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
127127
128128private:
129129 NestConst<ValueExprNode> delimiter;
@@ -136,23 +136,23 @@ class CountAggNode final : public AggNode
136136
137137 static DmlNode* parse (thread_db* tdbb, MemoryPool& pool, CompilerScratch* csb, const UCHAR blrOp);
138138
139- virtual unsigned getCapabilities () const
139+ unsigned getCapabilities () const override
140140 {
141141 return CAP_RESPECTS_WINDOW_FRAME | CAP_WANTS_AGG_CALLS;
142142 }
143143
144- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
145- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
146- virtual void genBlr (DsqlCompilerScratch* dsqlScratch);
147- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
148- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
144+ Firebird::string internalPrint (NodePrinter& printer) const override ;
145+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
146+ void genBlr (DsqlCompilerScratch* dsqlScratch) override ;
147+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
148+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
149149
150- virtual void aggInit (thread_db* tdbb, Request* request) const ;
151- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
152- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
150+ void aggInit (thread_db* tdbb, Request* request) const override ;
151+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
152+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
153153
154154protected:
155- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
155+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
156156};
157157
158158class SumAggNode final : public AggNode
@@ -162,27 +162,27 @@ class SumAggNode final : public AggNode
162162
163163 static DmlNode* parse (thread_db* tdbb, MemoryPool& pool, CompilerScratch* csb, const UCHAR blrOp);
164164
165- virtual const char * getCompatDialectVerb ()
165+ const char * getCompatDialectVerb () override
166166 {
167167 return " sum" ;
168168 }
169169
170- virtual unsigned getCapabilities () const
170+ unsigned getCapabilities () const override
171171 {
172172 return CAP_RESPECTS_WINDOW_FRAME | CAP_WANTS_AGG_CALLS;
173173 }
174174
175- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
176- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
177- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
178- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
175+ Firebird::string internalPrint (NodePrinter& printer) const override ;
176+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
177+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
178+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
179179
180- virtual void aggInit (thread_db* tdbb, Request* request) const ;
181- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
182- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
180+ void aggInit (thread_db* tdbb, Request* request) const override ;
181+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
182+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
183183
184184protected:
185- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
185+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
186186};
187187
188188class MaxMinAggNode final : public AggNode
@@ -198,22 +198,22 @@ class MaxMinAggNode final : public AggNode
198198
199199 static DmlNode* parse (thread_db* tdbb, MemoryPool& pool, CompilerScratch* csb, const UCHAR blrOp);
200200
201- virtual unsigned getCapabilities () const
201+ unsigned getCapabilities () const override
202202 {
203203 return CAP_RESPECTS_WINDOW_FRAME | CAP_WANTS_AGG_CALLS;
204204 }
205205
206- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
207- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
208- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
209- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
206+ Firebird::string internalPrint (NodePrinter& printer) const override ;
207+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
208+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
209+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
210210
211- virtual void aggInit (thread_db* tdbb, Request* request) const ;
212- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
213- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
211+ void aggInit (thread_db* tdbb, Request* request) const override ;
212+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
213+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
214214
215215protected:
216- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
216+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
217217
218218public:
219219 const MaxMinType type;
@@ -244,25 +244,25 @@ class StdDevAggNode final : public AggNode
244244
245245 explicit StdDevAggNode (MemoryPool& pool, StdDevType aType, ValueExprNode* aArg = NULL );
246246
247- virtual unsigned getCapabilities () const
247+ unsigned getCapabilities () const override
248248 {
249249 return CAP_RESPECTS_WINDOW_FRAME | CAP_WANTS_AGG_CALLS;
250250 }
251251
252- virtual void parseArgs (thread_db* tdbb, CompilerScratch* csb, unsigned count);
252+ void parseArgs (thread_db* tdbb, CompilerScratch* csb, unsigned count) override ;
253253
254- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
255- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
256- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
257- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
258- virtual AggNode* pass2 (thread_db* tdbb, CompilerScratch* csb);
254+ Firebird::string internalPrint (NodePrinter& printer) const override ;
255+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
256+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
257+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
258+ AggNode* pass2 (thread_db* tdbb, CompilerScratch* csb) override ;
259259
260- virtual void aggInit (thread_db* tdbb, Request* request) const ;
261- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
262- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
260+ void aggInit (thread_db* tdbb, Request* request) const override ;
261+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
262+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
263263
264264protected:
265- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
265+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
266266
267267public:
268268 const StdDevType type;
@@ -296,32 +296,32 @@ class CorrAggNode final : public AggNode
296296 explicit CorrAggNode (MemoryPool& pool, CorrType aType,
297297 ValueExprNode* aArg = NULL , ValueExprNode* aArg2 = NULL );
298298
299- virtual unsigned getCapabilities () const
299+ unsigned getCapabilities () const override
300300 {
301301 return CAP_RESPECTS_WINDOW_FRAME | CAP_WANTS_AGG_CALLS;
302302 }
303303
304- virtual void parseArgs (thread_db* tdbb, CompilerScratch* csb, unsigned count);
304+ void parseArgs (thread_db* tdbb, CompilerScratch* csb, unsigned count) override ;
305305
306- virtual void getChildren (NodeRefsHolder& holder, bool dsql) const
306+ void getChildren (NodeRefsHolder& holder, bool dsql) const override
307307 {
308308 AggNode::getChildren (holder, dsql);
309309 holder.add (arg2);
310310 }
311311
312- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
313- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
314- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
315- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
316- virtual AggNode* pass2 (thread_db* tdbb, CompilerScratch* csb);
312+ Firebird::string internalPrint (NodePrinter& printer) const override ;
313+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
314+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
315+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
316+ AggNode* pass2 (thread_db* tdbb, CompilerScratch* csb) override ;
317317
318- virtual void aggInit (thread_db* tdbb, Request* request) const ;
319- virtual bool aggPass (thread_db* tdbb, Request* request) const ;
320- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
321- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
318+ void aggInit (thread_db* tdbb, Request* request) const override ;
319+ bool aggPass (thread_db* tdbb, Request* request) const override ;
320+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
321+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
322322
323323protected:
324- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
324+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
325325
326326public:
327327 const CorrType type;
@@ -361,32 +361,32 @@ class RegrAggNode final : public AggNode
361361 explicit RegrAggNode (MemoryPool& pool, RegrType aType,
362362 ValueExprNode* aArg = NULL , ValueExprNode* aArg2 = NULL );
363363
364- virtual unsigned getCapabilities () const
364+ unsigned getCapabilities () const override
365365 {
366366 return CAP_RESPECTS_WINDOW_FRAME | CAP_WANTS_AGG_CALLS;
367367 }
368368
369- virtual void parseArgs (thread_db* tdbb, CompilerScratch* csb, unsigned count);
369+ void parseArgs (thread_db* tdbb, CompilerScratch* csb, unsigned count) override ;
370370
371- virtual void getChildren (NodeRefsHolder& holder, bool dsql) const
371+ void getChildren (NodeRefsHolder& holder, bool dsql) const override
372372 {
373373 AggNode::getChildren (holder, dsql);
374374 holder.add (arg2);
375375 }
376376
377- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
378- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
379- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
380- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
381- virtual AggNode* pass2 (thread_db* tdbb, CompilerScratch* csb);
377+ Firebird::string internalPrint (NodePrinter& printer) const override ;
378+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
379+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
380+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
381+ AggNode* pass2 (thread_db* tdbb, CompilerScratch* csb) override ;
382382
383- virtual void aggInit (thread_db* tdbb, Request* request) const ;
384- virtual bool aggPass (thread_db* tdbb, Request* request) const ;
385- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
386- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
383+ void aggInit (thread_db* tdbb, Request* request) const override ;
384+ bool aggPass (thread_db* tdbb, Request* request) const override ;
385+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
386+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
387387
388388protected:
389- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
389+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
390390
391391public:
392392 const RegrType type;
@@ -402,31 +402,31 @@ class RegrCountAggNode final : public AggNode
402402 explicit RegrCountAggNode (MemoryPool& pool,
403403 ValueExprNode* aArg = NULL , ValueExprNode* aArg2 = NULL );
404404
405- virtual unsigned getCapabilities () const
405+ unsigned getCapabilities () const override
406406 {
407407 return CAP_RESPECTS_WINDOW_FRAME | CAP_WANTS_AGG_CALLS;
408408 }
409409
410- virtual void parseArgs (thread_db* tdbb, CompilerScratch* csb, unsigned count);
410+ void parseArgs (thread_db* tdbb, CompilerScratch* csb, unsigned count) override ;
411411
412- virtual void getChildren (NodeRefsHolder& holder, bool dsql) const
412+ void getChildren (NodeRefsHolder& holder, bool dsql) const override
413413 {
414414 AggNode::getChildren (holder, dsql);
415415 holder.add (arg2);
416416 }
417417
418- virtual Firebird::string internalPrint (NodePrinter& printer) const ;
419- virtual void make (DsqlCompilerScratch* dsqlScratch, dsc* desc);
420- virtual void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc);
421- virtual ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const ;
418+ Firebird::string internalPrint (NodePrinter& printer) const override ;
419+ void make (DsqlCompilerScratch* dsqlScratch, dsc* desc) override ;
420+ void getDesc (thread_db* tdbb, CompilerScratch* csb, dsc* desc) override ;
421+ ValueExprNode* copy (thread_db* tdbb, NodeCopier& copier) const override ;
422422
423- virtual void aggInit (thread_db* tdbb, Request* request) const ;
424- virtual bool aggPass (thread_db* tdbb, Request* request) const ;
425- virtual void aggPass (thread_db* tdbb, Request* request, dsc* desc) const ;
426- virtual dsc* aggExecute (thread_db* tdbb, Request* request) const ;
423+ void aggInit (thread_db* tdbb, Request* request) const override ;
424+ bool aggPass (thread_db* tdbb, Request* request) const override ;
425+ void aggPass (thread_db* tdbb, Request* request, dsc* desc) const override ;
426+ dsc* aggExecute (thread_db* tdbb, Request* request) const override ;
427427
428428protected:
429- virtual AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ ;
429+ AggNode* dsqlCopy (DsqlCompilerScratch* dsqlScratch) /* const*/ override ;
430430
431431public:
432432 NestConst<ValueExprNode> arg2;
0 commit comments