1 --- firebird-1.5.2.4731/src/common/classes/alloc.h~ 2004-09-17 20:34:27.000000000 +0000
2 +++ firebird-1.5.2.4731/src/common/classes/alloc.h 2005-05-02 23:30:18.351312952 +0000
4 #define FB_NEW(pool) new(pool,__FILE__,__LINE__)
5 #define FB_NEW_RPT(pool,count) new(pool,count,__FILE__,__LINE__)
7 -static inline void* operator new(size_t s, Firebird::MemoryPool& pool) {
8 +inline void* operator new(size_t s, Firebird::MemoryPool& pool) {
9 return pool.allocate(s);
10 // return pool.calloc(s);
12 -static inline void* operator new[](size_t s, Firebird::MemoryPool& pool) {
13 +inline void* operator new[](size_t s, Firebird::MemoryPool& pool) {
14 return pool.allocate(s);
15 // return pool.calloc(s);
17 --- firebird-1.5.2.4731/src/common/config/config.h.orig 2005-05-02 23:33:31.284982576 +0000
18 +++ firebird-1.5.2.4731/src/common/config/config.h 2005-05-02 23:36:57.674606584 +0000
21 Block size for the sorting manager
23 - static int getSortMemBlockSize();
24 + static size_t getSortMemBlockSize();
27 Memory usage limit for the sorting manager
29 - static int getSortMemUpperLimit();
30 + static size_t getSortMemUpperLimit();
33 Whether remote (NFS) files can be opened
36 Startup option for the guardian
38 - static int getGuardianOption();
39 + static size_t getGuardianOption();
44 - static int getCpuAffinityMask();
45 + static size_t getCpuAffinityMask();
48 Old parameter ordering for backward compatibility with FB1/IB6.X
53 - static int getTcpRemoteBufferSize();
54 + static size_t getTcpRemoteBufferSize();
57 Disable Nagle algorithm
62 - static int getIpcMapSize();
63 + static size_t getIpcMapSize();
66 Default database cache size
68 - static int getDefaultDbCachePages();
69 + static size_t getDefaultDbCachePages();
74 - static int getConnectionTimeout();
75 + static size_t getConnectionTimeout();
80 - static int getDummyPacketInterval();
81 + static size_t getDummyPacketInterval();
84 Lock manager memory size
86 - static int getLockMemSize();
87 + static size_t getLockMemSize();
90 Lock manager semaphore count
92 - static int getLockSemCount();
93 + static size_t getLockSemCount();
96 Lock manager signal number
98 - static int getLockSignal();
99 + static size_t getLockSignal();
102 Lock manager grant order
103 @@ -198,27 +198,27 @@
105 Lock manager hash slots
107 - static int getLockHashSlots();
108 + static size_t getLockHashSlots();
111 Lock manager acquire spins
113 - static int getLockAcquireSpins();
114 + static size_t getLockAcquireSpins();
117 Event manager memory size
119 - static int getEventMemSize();
120 + static size_t getEventMemSize();
125 - static int getDeadlockTimeout();
126 + static size_t getDeadlockTimeout();
131 - static int getSolarisStallValue();
132 + static size_t getSolarisStallValue();
136 @@ -228,17 +228,17 @@
138 Priority switch delay
140 - static int getPrioritySwitchDelay();
141 + static size_t getPrioritySwitchDelay();
144 Dead threads collection
146 - static int getDeadThreadsCollection();
147 + static size_t getDeadThreadsCollection();
152 - static int getPriorityBoost();
153 + static size_t getPriorityBoost();
156 Service name for remote protocols
159 Service port for INET
161 - static int getRemoteServicePort();
162 + static size_t getRemoteServicePort();
166 @@ -263,17 +263,17 @@
168 Unflushed writes number
170 - static int getMaxUnflushedWrites();
171 + static size_t getMaxUnflushedWrites();
176 - static int getMaxUnflushedWriteTime();
177 + static size_t getMaxUnflushedWriteTime();
180 Process priority level
182 - static int getProcessPriorityLevel();
183 + static size_t getProcessPriorityLevel();
186 Create window for IPC stuff
189 Port for event processing
191 - static int getRemoteAuxPort();
192 + static size_t getRemoteAuxPort();
195 Server binding NIC address
196 --- firebird-1.5.2.4731/src/common/config/config.cpp.orig 2005-05-02 23:33:35.531337032 +0000
197 +++ firebird-1.5.2.4731/src/common/config/config.cpp 2005-05-02 23:36:03.720808808 +0000
198 @@ -257,14 +257,14 @@
199 return result ? result : sysConfig.root_dir;
202 -int Config::getSortMemBlockSize()
203 +size_t Config::getSortMemBlockSize()
205 - return (int) sysConfig.values[KEY_SORT_MEM_BLOCK_SIZE];
206 + return (size_t) sysConfig.values[KEY_SORT_MEM_BLOCK_SIZE];
209 -int Config::getSortMemUpperLimit()
210 +size_t Config::getSortMemUpperLimit()
212 - return (int) sysConfig.values[KEY_SORT_MEM_UPPER_LIMIT];
213 + return (size_t) sysConfig.values[KEY_SORT_MEM_UPPER_LIMIT];
216 bool Config::getRemoteFileOpenAbility()
217 @@ -272,14 +272,14 @@
218 return (bool) sysConfig.values[KEY_REMOTE_FILE_OPEN_ABILITY];
221 -int Config::getGuardianOption()
222 +size_t Config::getGuardianOption()
224 - return (int) sysConfig.values[KEY_GUARDIAN_OPTION];
225 + return (size_t) sysConfig.values[KEY_GUARDIAN_OPTION];
228 -int Config::getCpuAffinityMask()
229 +size_t Config::getCpuAffinityMask()
231 - return (int) sysConfig.values[KEY_CPU_AFFINITY_MASK];
232 + return (size_t) sysConfig.values[KEY_CPU_AFFINITY_MASK];
235 bool Config::getOldParameterOrdering()
237 return (bool) sysConfig.values[KEY_OLD_PARAMETER_ORDERING];
240 -int Config::getTcpRemoteBufferSize()
241 +size_t Config::getTcpRemoteBufferSize()
243 - return (int) sysConfig.values[KEY_TCP_REMOTE_BUFFER_SIZE];
244 + return (size_t) sysConfig.values[KEY_TCP_REMOTE_BUFFER_SIZE];
247 bool Config::getTcpNoNagle()
248 @@ -297,39 +297,39 @@
249 return (bool) sysConfig.values[KEY_TCP_NO_NAGLE];
252 -int Config::getIpcMapSize()
253 +size_t Config::getIpcMapSize()
255 - return (int) sysConfig.values[KEY_IPC_MAP_SIZE];
256 + return (size_t) sysConfig.values[KEY_IPC_MAP_SIZE];
259 -int Config::getDefaultDbCachePages()
260 +size_t Config::getDefaultDbCachePages()
262 - return (int) sysConfig.values[KEY_DEFAULT_DB_CACHE_PAGES];
263 + return (size_t) sysConfig.values[KEY_DEFAULT_DB_CACHE_PAGES];
266 -int Config::getConnectionTimeout()
267 +size_t Config::getConnectionTimeout()
269 - return (int) sysConfig.values[KEY_CONNECTION_TIMEOUT];
270 + return (size_t) sysConfig.values[KEY_CONNECTION_TIMEOUT];
273 -int Config::getDummyPacketInterval()
274 +size_t Config::getDummyPacketInterval()
276 - return (int) sysConfig.values[KEY_DUMMY_PACKET_INTERVAL];
277 + return (size_t) sysConfig.values[KEY_DUMMY_PACKET_INTERVAL];
280 -int Config::getLockMemSize()
281 +size_t Config::getLockMemSize()
283 - return (int) sysConfig.values[KEY_LOCK_MEM_SIZE];
284 + return (size_t) sysConfig.values[KEY_LOCK_MEM_SIZE];
287 -int Config::getLockSemCount()
288 +size_t Config::getLockSemCount()
290 - return (int) sysConfig.values[KEY_LOCK_SEM_COUNT];
291 + return (size_t) sysConfig.values[KEY_LOCK_SEM_COUNT];
294 -int Config::getLockSignal()
295 +size_t Config::getLockSignal()
297 - return (int) sysConfig.values[KEY_LOCK_SIGNAL];
298 + return (size_t) sysConfig.values[KEY_LOCK_SIGNAL];
301 bool Config::getLockGrantOrder()
302 @@ -337,29 +337,29 @@
303 return (bool) sysConfig.values[KEY_LOCK_GRANT_ORDER];
306 -int Config::getLockHashSlots()
307 +size_t Config::getLockHashSlots()
309 - return (int) sysConfig.values[KEY_LOCK_HASH_SLOTS];
310 + return (size_t) sysConfig.values[KEY_LOCK_HASH_SLOTS];
313 -int Config::getLockAcquireSpins()
314 +size_t Config::getLockAcquireSpins()
316 - return (int) sysConfig.values[KEY_LOCK_ACQUIRE_SPINS];
317 + return (size_t) sysConfig.values[KEY_LOCK_ACQUIRE_SPINS];
320 -int Config::getEventMemSize()
321 +size_t Config::getEventMemSize()
323 - return (int) sysConfig.values[KEY_EVENT_MEM_SIZE];
324 + return (size_t) sysConfig.values[KEY_EVENT_MEM_SIZE];
327 -int Config::getDeadlockTimeout()
328 +size_t Config::getDeadlockTimeout()
330 - return (int) sysConfig.values[KEY_DEADLOCK_TIMEOUT];
331 + return (size_t) sysConfig.values[KEY_DEADLOCK_TIMEOUT];
334 -int Config::getSolarisStallValue()
335 +size_t Config::getSolarisStallValue()
337 - return (int) sysConfig.values[KEY_SOLARIS_STALL_VALUE];
338 + return (size_t) sysConfig.values[KEY_SOLARIS_STALL_VALUE];
341 bool Config::getTraceMemoryPools()
342 @@ -367,25 +367,25 @@
343 return (bool) sysConfig.values[KEY_TRACE_MEMORY_POOLS];
346 -int Config::getPrioritySwitchDelay()
347 +size_t Config::getPrioritySwitchDelay()
349 - int rc = (int) sysConfig.values[KEY_PRIORITY_SWITCH_DELAY];
350 + size_t rc = (size_t) sysConfig.values[KEY_PRIORITY_SWITCH_DELAY];
356 -int Config::getDeadThreadsCollection()
357 +size_t Config::getDeadThreadsCollection()
359 - int rc = (int) sysConfig.values[KEY_DEAD_THREADS_COLLECTION];
360 + size_t rc = (size_t) sysConfig.values[KEY_DEAD_THREADS_COLLECTION];
366 -int Config::getPriorityBoost()
367 +size_t Config::getPriorityBoost()
369 - int rc = (int) sysConfig.values[KEY_PRIORITY_BOOST];
370 + size_t rc = (size_t) sysConfig.values[KEY_PRIORITY_BOOST];
375 return (const char*) sysConfig.values[KEY_REMOTE_SERVICE_NAME];
378 -int Config::getRemoteServicePort()
379 +size_t Config::getRemoteServicePort()
381 - return (int) sysConfig.values[KEY_REMOTE_SERVICE_PORT];
382 + return (size_t) sysConfig.values[KEY_REMOTE_SERVICE_PORT];
385 const char *Config::getRemotePipeName()
386 @@ -413,19 +413,19 @@
387 return (const char*) sysConfig.values[KEY_IPC_NAME];
390 -int Config::getMaxUnflushedWrites()
391 +size_t Config::getMaxUnflushedWrites()
393 - return (int) sysConfig.values[KEY_MAX_UNFLUSHED_WRITES];
394 + return (size_t) sysConfig.values[KEY_MAX_UNFLUSHED_WRITES];
397 -int Config::getMaxUnflushedWriteTime()
398 +size_t Config::getMaxUnflushedWriteTime()
400 - return (int) sysConfig.values[KEY_MAX_UNFLUSHED_WRITE_TIME];
401 + return (size_t) sysConfig.values[KEY_MAX_UNFLUSHED_WRITE_TIME];
404 -int Config::getProcessPriorityLevel()
405 +size_t Config::getProcessPriorityLevel()
407 - return (int) sysConfig.values[KEY_PROCESS_PRIORITY_LEVEL];
408 + return (size_t) sysConfig.values[KEY_PROCESS_PRIORITY_LEVEL];
411 bool Config::getCreateInternalWindow()
412 @@ -438,10 +438,10 @@
413 return (bool) sysConfig.values[KEY_COMPLETE_BOOLEAN_EVALUATION];
416 -int Config::getRemoteAuxPort()
417 +size_t Config::getRemoteAuxPort()
420 - return (int) sysConfig.values[KEY_REMOTE_AUX_PORT];
421 + return (size_t) sysConfig.values[KEY_REMOTE_AUX_PORT];
425 --- firebird-1.5.2.4731/src/jrd/common.h.orig 2005-05-02 23:26:45.000000000 +0000
426 +++ firebird-1.5.2.4731/src/jrd/common.h 2005-05-02 23:50:08.873326096 +0000
429 #define JRD_BUGCHK 15 /* facility code for bugcheck messages */
431 -#define OFFSET(struct,fld) ((int) &((struct) 0)->fld)
432 -#define OFFSETA(struct,fld) ((int) ((struct) 0)->fld)
433 +#define OFFSET(struct,fld) ((size_t) &((struct) 0)->fld)
434 +#define OFFSETA(struct,fld) ((size_t) ((struct) 0)->fld)
437 #ifndef ODS_ALIGNMENT
438 --- firebird-1.5.2.4731/src/jrd/gds.cpp.orig 2005-05-02 23:39:56.000000000 +0000
439 +++ firebird-1.5.2.4731/src/jrd/gds.cpp 2005-05-02 23:51:13.128557816 +0000
440 @@ -2356,7 +2356,7 @@
444 - if (!(result = ib_fdopen((int) result, "w+")))
445 + if (!(result = ib_fdopen((int)(IPTR) result, "w+")))
449 --- firebird-1.5.2.4731/src/gpre/cmd.cpp~ 2003-10-30 22:25:53.000000000 +0000
450 +++ firebird-1.5.2.4731/src/gpre/cmd.cpp 2005-05-03 00:06:56.620125296 +0000
453 case ACT_drop_shadow:
454 put_numeric(request, gds_dyn_delete_shadow,
455 - (SSHORT) action->act_object);
456 + (SSHORT) (IPTR) action->act_object);
460 --- firebird-1.5.2.4731/src/gpre/cme.cpp.orig 2005-05-03 00:16:24.976721960 +0000
461 +++ firebird-1.5.2.4731/src/gpre/cme.cpp 2005-05-03 00:15:46.661546752 +0000
463 // ** Begin date/time/timestamp support *
466 - switch ((KWWORDS) (int) node->nod_arg[0])
467 + switch ((KWWORDS) (IPTR) node->nod_arg[0])
470 STUFF(blr_extract_year);
472 // ** Begin date/time/timestamp support *
475 - KWWORDS kw_word = (KWWORDS) (int) node->nod_arg[0];
476 + KWWORDS kw_word = (KWWORDS) (IPTR) node->nod_arg[0];
477 CME_get_dtype(node->nod_arg[1], f);
478 switch (f->fld_dtype)
480 --- firebird-1.5.2.4731/src/gpre/c_cxx.cpp.orig 2005-05-03 00:17:13.068891056 +0000
481 +++ firebird-1.5.2.4731/src/gpre/c_cxx.cpp 2005-05-03 00:17:54.679565272 +0000
482 @@ -2184,7 +2184,7 @@
484 args.pat_database = (DBB) init->nod_arg[3];
485 args.pat_vector1 = status_vector(action);
486 - args.pat_value1 = (int) init->nod_arg[2];
487 + args.pat_value1 = (IPTR) init->nod_arg[2];
488 args.pat_value2 = (int) event_list->nod_count;
490 // generate call to dynamically generate event blocks
491 @@ -2255,7 +2255,7 @@
492 event_init = (GPRE_NOD) event_action->act_object;
493 stack_name = (SYM) event_init->nod_arg[0];
494 if (!strcmp(event_name->sym_string, stack_name->sym_string)) {
495 - ident = (int) event_init->nod_arg[2];
496 + ident = (IPTR) event_init->nod_arg[2];
497 database = (DBB) event_init->nod_arg[3];
500 --- firebird-1.5.2.4731/src/jrd/sdl.cpp~ 2003-04-10 06:49:14.000000000 +0000
501 +++ firebird-1.5.2.4731/src/jrd/sdl.cpp 2005-05-03 00:19:43.328048192 +0000
504 element_desc = array_desc->ads_rpt[value].ads_desc;
505 element_desc.dsc_address = (BLOB_PTR *) arg->sdl_arg_array +
506 - (SLONG) element_desc.dsc_address +
507 + (IPTR) element_desc.dsc_address +
508 (array_desc->ads_element_length * subscript);
510 /* Is this element within the array bounds? */
511 --- firebird-1.5.2.4731/src/jrd/dpm.cpp.orig 2005-05-03 00:21:08.675073472 +0000
512 +++ firebird-1.5.2.4731/src/jrd/dpm.cpp 2005-05-03 00:21:25.822466672 +0000
513 @@ -2214,7 +2214,7 @@
517 - CCH_precedence(tdbb, &rpb->rpb_window, (SLONG) LLS_POP(stack));
518 + CCH_precedence(tdbb, &rpb->rpb_window, (IPTR) LLS_POP(stack));
520 CCH_precedence(tdbb, &rpb->rpb_window, -rpb->rpb_transaction);
521 CCH_MARK(tdbb, &rpb->rpb_window);
522 @@ -2831,7 +2831,7 @@
523 If the page need to be compressed, compress it. */
526 - CCH_precedence(tdbb, &rpb->rpb_window, (SLONG) LLS_POP(stack));
527 + CCH_precedence(tdbb, &rpb->rpb_window, (IPTR) LLS_POP(stack));
528 CCH_MARK(tdbb, &rpb->rpb_window);
529 i = page->dpg_count + ((slot) ? 0 : 1);
531 --- firebird-1.5.2.4731/src/jrd/met.cpp.orig 2005-05-03 00:22:57.523525992 +0000
532 +++ firebird-1.5.2.4731/src/jrd/met.cpp 2005-05-03 00:24:20.650888712 +0000
533 @@ -1541,7 +1541,7 @@
534 if (desc->dsc_address)
537 - (ULONG) desc->dsc_address + desc->dsc_length;
538 + (IPTR) desc->dsc_address + desc->dsc_length;
542 @@ -3181,13 +3181,13 @@
543 index_number < references->frgn_reference_ids->count();
546 - if (idx->idx_id == (UCHAR) (*references->frgn_reference_ids)
547 + if (idx->idx_id == (IPTR) (*references->frgn_reference_ids)
550 idx->idx_primary_relation =
551 - (USHORT) (*references->frgn_relations)[index_number];
552 + (IPTR) (*references->frgn_relations)[index_number];
553 idx->idx_primary_index =
554 - (UCHAR) (*references->frgn_indexes)[index_number];
555 + (IPTR) (*references->frgn_indexes)[index_number];
559 @@ -3203,7 +3203,7 @@
560 index_number < dependencies->prim_reference_ids->count();
563 - if (idx->idx_id == (UCHAR) (*dependencies->prim_reference_ids)
564 + if (idx->idx_id == (IPTR) (*dependencies->prim_reference_ids)
567 idx->idx_foreign_primaries =
568 @@ -4182,10 +4182,10 @@
570 if ( (node = csb_->csb_rpt[i].csb_message) )
572 - if ((int) node->nod_arg[e_msg_number] == 0)
573 + if ((IPTR) node->nod_arg[e_msg_number] == 0)
575 procedure->prc_input_msg = node;
576 - } else if ((int) node->nod_arg[e_msg_number] == 1)
577 + } else if ((IPTR) node->nod_arg[e_msg_number] == 1)
579 procedure->prc_output_msg = node;
581 @@ -6141,7 +6141,7 @@
582 node = (JRD_NOD) LLS_POP(&csb->csb_dependencies);
583 if (!node->nod_arg[e_dep_object])
585 - dpdo_type = (SSHORT) node->nod_arg[e_dep_object_type];
586 + dpdo_type = (IPTR) node->nod_arg[e_dep_object_type];
590 @@ -6154,13 +6154,13 @@
591 dpdo_name = (TEXT*) procedure->prc_name->str_data;
594 - number = (SLONG) node->nod_arg [e_dep_object];
595 + number = (IPTR) node->nod_arg [e_dep_object];
596 MET_lookup_exception (tdbb, number, name, NULL);
599 /* CVC: Here I'm going to track those pesky things named generators and UDFs. */
601 - number = (SLONG) node->nod_arg [e_dep_object];
602 + number = (IPTR) node->nod_arg [e_dep_object];
603 MET_lookup_generator_id (tdbb, number, name);
606 @@ -6178,7 +6178,7 @@
608 if (field_node->nod_type == nod_field)
610 - fld_id = (SSHORT) field_node->nod_arg[0];
611 + fld_id = (IPTR) field_node->nod_arg[0];
614 if ( (field = MET_get_field(relation, fld_id)) )
615 --- firebird-1.5.2.4731/src/jrd/blb.cpp.orig 2005-05-03 00:24:45.720077616 +0000
616 +++ firebird-1.5.2.4731/src/jrd/blb.cpp 2005-05-03 00:24:58.563125176 +0000
618 request = tdbb->tdbb_request;
619 source = (BID) from_desc->dsc_address;
620 destination = (BID) to_desc->dsc_address;
621 - id = (USHORT) field->nod_arg[e_fld_id];
622 - rpb = &request->req_rpb[(int) field->nod_arg[e_fld_stream]];
623 + id = (IPTR) field->nod_arg[e_fld_id];
624 + rpb = &request->req_rpb[(IPTR) field->nod_arg[e_fld_stream]];
625 relation = rpb->rpb_relation;
626 record = rpb->rpb_record;
628 --- firebird-1.5.2.4731/src/jrd/cmp.cpp.orig 2005-05-03 00:25:15.000000000 +0000
629 +++ firebird-1.5.2.4731/src/jrd/cmp.cpp 2005-05-03 00:32:27.036946792 +0000
634 - id = (USHORT) node->nod_arg[e_fld_id];
635 + id = (IPTR) node->nod_arg[e_fld_id];
637 - CMP_format(tdbb, csb, (USHORT) node->nod_arg[e_fld_stream]);
638 + CMP_format(tdbb, csb, (IPTR) node->nod_arg[e_fld_stream]);
639 if (id >= format->fmt_count) {
640 desc->dsc_dtype = dtype_null;
641 desc->dsc_length = 0;
644 sub = node->nod_arg[e_scl_field];
646 - csb->csb_rpt[(USHORT) sub->
647 + csb->csb_rpt[(IPTR) sub->
648 nod_arg[e_fld_stream]].csb_relation;
649 - id = (USHORT) sub->nod_arg[e_fld_id];
650 + id = (IPTR) sub->nod_arg[e_fld_id];
651 field = MET_get_field(relation, id);
652 if (!field || !(array = field->fld_array))
653 IBERROR(223); /* msg 223 argument of scalar operation must be an array */
654 @@ -1661,7 +1661,7 @@
658 - if ((ULONG) node->nod_arg[e_extract_part] == blr_extract_second) {
659 + if ((IPTR) node->nod_arg[e_extract_part] == blr_extract_second) {
660 /* QUADDATE - SECOND returns a float, or scaled! */
661 desc->dsc_dtype = dtype_long;
662 desc->dsc_length = sizeof(ULONG);
663 @@ -1720,7 +1720,7 @@
665 message = node->nod_arg[e_arg_message];
666 format = (FMT) message->nod_arg[e_msg_format];
667 - *desc = format->fmt_desc[(int) node->nod_arg[e_arg_number]];
668 + *desc = format->fmt_desc[(IPTR) node->nod_arg[e_arg_number]];
672 @@ -2651,8 +2651,8 @@
673 !input->nod_arg[e_fld_id] && !input->nod_arg[e_fld_stream])
676 - field_id = (USHORT) input->nod_arg[e_fld_id];
677 - stream = (USHORT) input->nod_arg[e_fld_stream];
678 + field_id = (IPTR) input->nod_arg[e_fld_id];
679 + stream = (IPTR) input->nod_arg[e_fld_stream];
683 @@ -2660,7 +2660,7 @@
684 relation = (*csb)->csb_rpt[stream].csb_relation;
685 field = MET_get_field(relation, field_id);
686 if (field->fld_source)
687 - field_id = (USHORT) field->fld_source->nod_arg[e_fld_id];
688 + field_id = (IPTR) field->fld_source->nod_arg[e_fld_id];
691 stream = remap[stream];
692 @@ -2771,7 +2771,7 @@
693 node->nod_type = input->nod_type;
696 - stream = (USHORT) input->nod_arg[e_rel_stream];
697 + stream = (IPTR) input->nod_arg[e_rel_stream];
699 Last entry in the remap contains the the original stream number.
700 Get that stream number so that the flags can be copied
701 @@ -2851,7 +2851,7 @@
702 node->nod_arg[e_prc_inputs] =
703 copy(tdbb, csb, input->nod_arg[e_prc_inputs], remap, field_id,
704 node->nod_arg[e_prc_in_msg], remap_fld);
705 - stream = (USHORT) input->nod_arg[e_prc_stream];
706 + stream = (IPTR) input->nod_arg[e_prc_stream];
707 new_stream = (*csb)->csb_n_stream++;
708 node->nod_arg[e_prc_stream] = (JRD_NOD) (SLONG) new_stream;
709 /* TMN: Here we should really have the following assert */
710 @@ -2861,7 +2861,7 @@
711 element = CMP_csb_element(csb, new_stream);
712 // SKIDDER: Maybe we need to check if we really found a procedure ?
713 element->csb_procedure = MET_lookup_procedure_id(tdbb,
714 - (SSHORT)node->nod_arg[e_prc_procedure],FALSE,FALSE,0);
715 + (IPTR)node->nod_arg[e_prc_procedure],FALSE,FALSE,0);
717 (*csb)->csb_rpt[new_stream].csb_flags |=
718 (*csb)->csb_rpt[stream].csb_flags & csb_no_dbkey;
719 @@ -2874,7 +2874,7 @@
720 node = PAR_make_node(tdbb, e_agg_length);
721 node->nod_type = input->nod_type;
723 - stream = (USHORT) input->nod_arg[e_agg_stream];
724 + stream = (IPTR) input->nod_arg[e_agg_stream];
725 assert(stream <= MAX_STREAMS);
726 new_stream = (*csb)->csb_n_stream++;
727 assert(new_stream <= MAX_STREAMS);
728 @@ -2903,7 +2903,7 @@
729 node = PAR_make_node(tdbb, e_uni_length);
730 node->nod_type = input->nod_type;
732 - stream = (USHORT) input->nod_arg[e_uni_stream];
733 + stream = (IPTR) input->nod_arg[e_uni_stream];
734 new_stream = (*csb)->csb_n_stream++;
735 node->nod_arg[e_uni_stream] = (JRD_NOD) (SLONG) new_stream;
736 /* TMN: Here we should really have the following assert */
737 @@ -3041,7 +3041,7 @@
741 - stream = (USHORT) node->nod_arg[e_rel_stream];
742 + stream = (IPTR) node->nod_arg[e_rel_stream];
743 csb->csb_rpt[stream].csb_flags |= csb_no_dbkey;
744 tail = &csb->csb_rpt[stream];
745 if ( (relation = tail->csb_relation) )
746 @@ -3269,7 +3269,7 @@
748 UCHAR *map, local_map[MAP_LENGTH];
750 - stream = (USHORT) node->nod_arg[e_fld_stream];
751 + stream = (IPTR) node->nod_arg[e_fld_stream];
753 /* Look at all rse's which are lower in scope than the rse which this field
754 is referencing, and mark them as varying -- the rule is that if a field
755 @@ -3290,7 +3290,7 @@
756 if (!(relation = tail->csb_relation) ||
758 MET_get_field(relation,
759 - (USHORT) node->nod_arg[e_fld_id]))) break;
760 + (IPTR) node->nod_arg[e_fld_id]))) break;
762 /* if this is a modify or store, check REFERENCES access to any foreign keys. */
764 @@ -3402,9 +3402,9 @@
766 sub = node->nod_arg[e_asgn_from];
767 if (sub->nod_type == nod_field) {
768 - stream = (USHORT) sub->nod_arg[e_fld_stream];
769 + stream = (IPTR) sub->nod_arg[e_fld_stream];
770 field = MET_get_field((*csb)->csb_rpt[stream].csb_relation,
771 - (USHORT) sub->nod_arg[e_fld_id]);
772 + (IPTR) sub->nod_arg[e_fld_id]);
774 node->nod_arg[e_asgn_missing2] = field->fld_missing_value;
776 @@ -3412,12 +3412,12 @@
777 sub = node->nod_arg[e_asgn_to];
778 if (sub->nod_type != nod_field)
780 - stream = (USHORT) sub->nod_arg[e_fld_stream];
781 + stream = (IPTR) sub->nod_arg[e_fld_stream];
782 tail = &(*csb)->csb_rpt[stream];
785 MET_get_field(tail->csb_relation,
786 - (USHORT) sub->nod_arg[e_fld_id]))) break;
787 + (IPTR) sub->nod_arg[e_fld_id]))) break;
788 if (field->fld_missing_value) {
789 node->nod_arg[e_asgn_missing] = field->fld_missing_value;
791 @@ -3431,7 +3431,7 @@
795 - stream = (USHORT) node->nod_arg[e_mod_new_stream];
796 + stream = (IPTR) node->nod_arg[e_mod_new_stream];
797 tail = &(*csb)->csb_rpt[stream];
798 tail->csb_flags |= csb_modify;
799 pass1_modify(tdbb, csb, node);
800 @@ -3439,13 +3439,13 @@
801 /* assert(node->nod_arg [e_mod_new_stream] <= MAX_USHORT); */
802 if ( (node->nod_arg[e_mod_validate] =
803 make_validation(tdbb, csb,
806 nod_arg[e_mod_new_stream])) ) node->nod_count =
807 MAX(node->nod_count, (USHORT) e_mod_validate + 1);
811 - stream = (USHORT) node->nod_arg[e_erase_stream];
812 + stream = (IPTR) node->nod_arg[e_erase_stream];
813 tail = &(*csb)->csb_rpt[stream];
814 tail->csb_flags |= csb_erase;
815 pass1_erase(tdbb, csb, node);
816 @@ -3461,12 +3461,12 @@
819 sub = node->nod_arg[e_sto_relation];
820 - stream = (USHORT) sub->nod_arg[e_rel_stream];
821 + stream = (IPTR) sub->nod_arg[e_rel_stream];
822 tail = &(*csb)->csb_rpt[stream];
823 tail->csb_flags |= csb_store;
824 sub = pass1_store(tdbb, csb, node);
826 - stream = (USHORT) sub->nod_arg[e_rel_stream];
827 + stream = (IPTR) sub->nod_arg[e_rel_stream];
828 if ((!node->nod_arg[e_sto_sub_store]) &&
829 (node->nod_arg[e_sto_validate] =
830 make_validation(tdbb, csb, stream))) node->nod_count =
831 @@ -3493,7 +3493,7 @@
834 assert((int)node->nod_arg[e_agg_stream] <= MAX_STREAMS);
835 - (*csb)->csb_rpt[(USHORT) node->nod_arg[e_agg_stream]].csb_flags |=
836 + (*csb)->csb_rpt[(IPTR) node->nod_arg[e_agg_stream]].csb_flags |=
838 ignore_dbkey(tdbb, *csb, (RSE) node->nod_arg[e_agg_rse], view);
839 node->nod_arg[e_agg_rse] =
840 @@ -3521,7 +3521,7 @@
843 type = node->nod_type;
844 - stream = (USHORT) node->nod_arg[0];
845 + stream = (IPTR) node->nod_arg[0];
847 if (!(*csb)->csb_rpt[stream].csb_map)
849 @@ -3556,7 +3556,7 @@
852 case nod_cardinality:
853 - stream = (USHORT) node->nod_arg[e_card_stream];
854 + stream = (IPTR) node->nod_arg[e_card_stream];
855 (*csb)->csb_rpt[stream].csb_flags |= csb_compute;
858 @@ -3623,7 +3623,7 @@
859 /* To support views of views, loop until we hit a real relation */
862 - stream = new_stream = (USHORT) node->nod_arg[e_erase_stream];
863 + stream = new_stream = (IPTR) node->nod_arg[e_erase_stream];
864 tail = &(*csb)->csb_rpt[stream];
865 tail->csb_flags |= csb_erase;
866 relation = (*csb)->csb_rpt[stream].csb_relation;
867 @@ -3691,7 +3691,7 @@
870 parent_stream = stream;
871 - new_stream = (USHORT) source->nod_arg[e_rel_stream];
872 + new_stream = (IPTR) source->nod_arg[e_rel_stream];
873 node->nod_arg[e_erase_stream] = (JRD_NOD) (SLONG) map[new_stream];
876 @@ -3738,7 +3738,7 @@
877 field = MET_get_field(relation, id);
878 if (field->fld_source)
880 - (USHORT) (JRD_NOD) (field->fld_source)->nod_arg[e_fld_id];
881 + (IPTR) (JRD_NOD) (field->fld_source)->nod_arg[e_fld_id];
885 @@ -3800,8 +3800,8 @@
886 /* To support views of views, loop until we hit a real relation */
889 - stream = (USHORT) node->nod_arg[e_mod_org_stream];
890 - new_stream = (USHORT) node->nod_arg[e_mod_new_stream];
891 + stream = (IPTR) node->nod_arg[e_mod_org_stream];
892 + new_stream = (IPTR) node->nod_arg[e_mod_new_stream];
893 tail = &(*csb)->csb_rpt[new_stream];
894 tail->csb_flags |= csb_modify;
895 relation = (*csb)->csb_rpt[stream].csb_relation;
896 @@ -3840,7 +3840,7 @@
898 MAX(node->nod_count, (USHORT) e_mod_map_view + 1);
899 map = (*csb)->csb_rpt[stream].csb_map;
900 - stream = (USHORT) source->nod_arg[e_rel_stream];
901 + stream = (IPTR) source->nod_arg[e_rel_stream];
902 stream = map[stream];
903 view_stream = new_stream;
905 @@ -3848,18 +3848,18 @@
909 - (SSHORT) node->nod_arg[e_mod_new_stream]);
910 + (IPTR) node->nod_arg[e_mod_new_stream]);
911 source = copy(tdbb, csb, source, map, 0, NULL, FALSE);
912 /* TMN: Here we should really have the following assert */
913 /* assert(source->nod_arg [e_rel_stream] <= MAX_UCHAR); */
914 - map[new_stream] = (UCHAR) source->nod_arg[e_rel_stream];
915 + map[new_stream] = (IPTR) source->nod_arg[e_rel_stream];
916 view_node = copy(tdbb, csb, node, map, 0, NULL, TRUE);
917 view_node->nod_arg[e_mod_org_stream] = (JRD_NOD) (SLONG) stream;
918 view_node->nod_arg[e_mod_new_stream] =
919 source->nod_arg[e_rel_stream];
920 view_node->nod_arg[e_mod_map_view] = NULL;
921 node->nod_arg[e_mod_sub_mod] = view_node;
922 - new_stream = (USHORT) source->nod_arg[e_rel_stream];
923 + new_stream = (IPTR) source->nod_arg[e_rel_stream];
924 view_node->nod_arg[e_mod_statement] =
925 pass1_expand_view(tdbb, *csb, view_stream, new_stream, TRUE);
927 @@ -3872,14 +3872,14 @@
928 /* View passes muster -- do some translation. Start with source stream */
930 map = (*csb)->csb_rpt[stream].csb_map;
931 - stream = (USHORT) source->nod_arg[e_rel_stream];
932 + stream = (IPTR) source->nod_arg[e_rel_stream];
933 node->nod_arg[e_mod_org_stream] = (JRD_NOD) (SLONG) map[stream];
935 /* Next, do update stream */
939 - (SSHORT) node->nod_arg[e_mod_new_stream]);
940 + (IPTR) node->nod_arg[e_mod_new_stream]);
941 source = copy(tdbb, csb, source, map, 0, NULL, FALSE);
942 node->nod_arg[e_mod_new_stream] = source->nod_arg[e_rel_stream];
944 @@ -4126,7 +4126,7 @@
946 pass1(tdbb, csb, source, parent_view, view_stream, FALSE);
947 procedure = MET_lookup_procedure_id(tdbb,
948 - (SSHORT)source->nod_arg[e_prc_procedure], FALSE, FALSE, 0);
949 + (IPTR)source->nod_arg[e_prc_procedure], FALSE, FALSE, 0);
950 post_procedure_access(tdbb, *csb, procedure);
951 CMP_post_resource(&(*csb)->csb_resources, (BLK) procedure,
952 Resource::rsc_procedure, procedure->prc_id);
953 @@ -4158,7 +4158,7 @@
955 source->nod_arg[e_rel_view] = (JRD_NOD) parent_view;
957 - stream = (USHORT) source->nod_arg[e_rel_stream];
958 + stream = (IPTR) source->nod_arg[e_rel_stream];
959 element = CMP_csb_element(csb, stream);
960 element->csb_view = parent_view;
961 /* TMN: Here we should really have the following assert */
962 @@ -4173,7 +4173,7 @@
963 for (vcx_ptr = &parent_view->rel_view_contexts; *vcx_ptr;
964 vcx_ptr = &(*vcx_ptr)->vcx_next)
965 if ((*vcx_ptr)->vcx_context ==
966 - (USHORT) source->nod_arg[e_rel_context]) {
967 + (IPTR) source->nod_arg[e_rel_context]) {
968 element->csb_alias = (*vcx_ptr)->vcx_context_name;
971 @@ -4317,7 +4317,7 @@
974 original = node->nod_arg[e_sto_relation];
975 - stream = (USHORT) original->nod_arg[e_rel_stream];
976 + stream = (IPTR) original->nod_arg[e_rel_stream];
977 tail = &(*csb)->csb_rpt[stream];
978 tail->csb_flags |= csb_store;
979 relation = (*csb)->csb_rpt[stream].csb_relation;
980 @@ -4371,7 +4371,7 @@
981 node->nod_arg[e_sto_relation] =
982 copy(tdbb, csb, source, map, 0, NULL, FALSE);
984 - (USHORT) node->nod_arg[e_sto_relation]->nod_arg[e_rel_stream];
985 + (IPTR) node->nod_arg[e_sto_relation]->nod_arg[e_rel_stream];
986 node->nod_arg[e_sto_statement] =
987 pass1_expand_view(tdbb, *csb, stream, new_stream, TRUE);
988 node->nod_arg[e_sto_statement] =
989 @@ -4719,9 +4719,9 @@
990 /* AB: Mark the streams involved with an UPDATE statement
991 active. So that the optimizer can use indices for
992 eventually used sub-selects. */
993 - stream = (USHORT) node->nod_arg[e_mod_org_stream];
994 + stream = (IPTR) node->nod_arg[e_mod_org_stream];
995 csb->csb_rpt[stream].csb_flags |= csb_active;
996 - stream = (USHORT) node->nod_arg[e_mod_new_stream];
997 + stream = (IPTR) node->nod_arg[e_mod_new_stream];
998 csb->csb_rpt[stream].csb_flags |= csb_active;
1001 @@ -4733,9 +4733,9 @@
1003 if (node->nod_type == nod_modify) {
1004 /* AB: Remove the previous flags */
1005 - stream = (USHORT) node->nod_arg[e_mod_org_stream];
1006 + stream = (IPTR) node->nod_arg[e_mod_org_stream];
1007 csb->csb_rpt[stream].csb_flags &= ~csb_active;
1008 - stream = (USHORT) node->nod_arg[e_mod_new_stream];
1009 + stream = (IPTR) node->nod_arg[e_mod_new_stream];
1010 csb->csb_rpt[stream].csb_flags &= ~csb_active;
1013 @@ -4834,7 +4834,7 @@
1015 fmt::fmt_desc_iterator desc;
1017 - stream = (USHORT) node->nod_arg[e_mod_org_stream];
1018 + stream = (IPTR) node->nod_arg[e_mod_org_stream];
1019 csb->csb_rpt[stream].csb_flags |= csb_update;
1020 format = CMP_format(tdbb, csb, stream);
1021 desc = format->fmt_desc.begin();
1022 @@ -4859,13 +4859,13 @@
1026 - stream = (USHORT) node->nod_arg[e_erase_stream];
1027 + stream = (IPTR) node->nod_arg[e_erase_stream];
1028 csb->csb_rpt[stream].csb_flags |= csb_update;
1032 - stream = (USHORT) node->nod_arg[e_fld_stream];
1033 - id = (USHORT) node->nod_arg[e_fld_id];
1034 + stream = (IPTR) node->nod_arg[e_fld_stream];
1035 + id = (IPTR) node->nod_arg[e_fld_id];
1036 SBM_set(tdbb, &csb->csb_rpt[stream].csb_fields, id);
1037 if (node->nod_flags & nod_value) {
1038 csb->csb_impure += sizeof(struct vlux);
1039 @@ -4939,7 +4939,7 @@
1040 pass2_rse(tdbb, csb, (RSE) node->nod_arg[e_agg_rse]);
1041 pass2(tdbb, csb, node->nod_arg[e_agg_map], node);
1042 pass2(tdbb, csb, node->nod_arg[e_agg_group], node);
1043 - stream = (USHORT) node->nod_arg[e_agg_stream];
1044 + stream = (IPTR) node->nod_arg[e_agg_stream];
1045 assert(stream <= MAX_STREAMS);
1046 process_map(tdbb, csb, node->nod_arg[e_agg_map],
1047 &csb->csb_rpt[stream].csb_format);
1048 @@ -5048,7 +5048,7 @@
1051 if (node->nod_type == nod_relation) {
1052 - USHORT stream = (USHORT) node->nod_arg[e_rel_stream];
1053 + USHORT stream = (IPTR) node->nod_arg[e_rel_stream];
1054 csb->csb_rpt[stream].csb_flags |= csb_active;
1055 pass2(tdbb, csb, node, (JRD_NOD) rse);
1057 @@ -5056,12 +5056,12 @@
1058 pass2_rse(tdbb, csb, (RSE) node);
1060 else if (node->nod_type == nod_procedure) {
1061 - USHORT stream = (USHORT) node->nod_arg[e_prc_stream];
1062 + USHORT stream = (IPTR) node->nod_arg[e_prc_stream];
1063 csb->csb_rpt[stream].csb_flags |= csb_active;
1064 pass2(tdbb, csb, node, (JRD_NOD) rse);
1066 else if (node->nod_type == nod_aggregate) {
1067 - USHORT stream = (USHORT) node->nod_arg[e_agg_stream];
1068 + USHORT stream = (IPTR) node->nod_arg[e_agg_stream];
1069 assert(stream <= MAX_STREAMS);
1070 csb->csb_rpt[stream].csb_flags |= csb_active;
1071 pass2(tdbb, csb, node, (JRD_NOD) rse);
1072 @@ -5116,7 +5116,7 @@
1073 /* Make up a format block sufficiently large to hold instantiated record */
1075 clauses = node->nod_arg[e_uni_clauses];
1076 - id = (USHORT) node->nod_arg[e_uni_stream];
1077 + id = (IPTR) node->nod_arg[e_uni_stream];
1078 format = &csb->csb_rpt[id].csb_format;
1080 /* Process alternating rse and map blocks */
1081 @@ -5158,7 +5158,7 @@
1083 for (ptr = rse->rse_relation, end = ptr + rse->rse_count; ptr < end;
1084 ptr++) if ((*ptr)->nod_type == nod_relation) {
1085 - stream = (USHORT) (*ptr)->nod_arg[e_rel_stream];
1086 + stream = (IPTR) (*ptr)->nod_arg[e_rel_stream];
1087 if (!(csb->csb_rpt[stream].csb_plan))
1088 ERR_post(gds_no_stream_plan, gds_arg_string,
1089 csb->csb_rpt[stream].csb_relation->rel_name, 0);
1090 @@ -5211,7 +5211,7 @@
1092 /* find the tail for the relation specified in the rse */
1094 - stream = (USHORT) plan_relation_node->nod_arg[e_rel_stream];
1095 + stream = (IPTR) plan_relation_node->nod_arg[e_rel_stream];
1096 tail = &csb->csb_rpt[stream];
1098 /* if the plan references a view, find the real base relation
1099 @@ -5447,15 +5447,15 @@
1102 if (node->nod_type == nod_relation) {
1103 - USHORT stream = (USHORT) node->nod_arg[e_rel_stream];
1104 + USHORT stream = (IPTR) node->nod_arg[e_rel_stream];
1105 csb->csb_rpt[stream].csb_flags &= ~csb_active;
1107 else if (node->nod_type == nod_procedure) {
1108 - USHORT stream = (USHORT) node->nod_arg[e_prc_stream];
1109 + USHORT stream = (IPTR) node->nod_arg[e_prc_stream];
1110 csb->csb_rpt[stream].csb_flags &= ~csb_active;
1112 else if (node->nod_type == nod_aggregate) {
1113 - USHORT stream = (USHORT) node->nod_arg[e_agg_stream];
1114 + USHORT stream = (IPTR) node->nod_arg[e_agg_stream];
1115 assert(stream <= MAX_STREAMS);
1116 csb->csb_rpt[stream].csb_flags &= ~csb_active;
1118 @@ -5551,7 +5551,7 @@
1119 for (end = ptr + map->nod_count; ptr < end; ptr++) {
1121 field = assignment->nod_arg[e_asgn_to];
1122 - id = (USHORT) field->nod_arg[e_fld_id];
1123 + id = (IPTR) field->nod_arg[e_fld_id];
1124 if (id >= format->fmt_count) {
1125 format->fmt_desc.resize(id + 1);
1127 @@ -5687,13 +5687,13 @@
1128 /* for aggregates, check current rse, if not found then check
1130 if (sub->nod_type == nod_aggregate) {
1131 - if ((stream == (USHORT) sub->nod_arg[e_rel_stream]) ||
1132 + if ((stream == (IPTR) sub->nod_arg[e_rel_stream]) ||
1133 (stream_in_rse(stream, (RSE) sub->nod_arg[e_agg_rse])))
1134 return TRUE; /* do not mark as variant */
1137 if ((sub->nod_type == nod_relation) &&
1138 - (stream == (USHORT) sub->nod_arg[e_rel_stream]))
1139 + (stream == (IPTR) sub->nod_arg[e_rel_stream]))
1140 return TRUE; /* do not mark as variant */