Primary Changes:
================
* made 'int' and 'uint' into 'int(64)' and 'u…int(64)' by default
rather than the 32-bit versions that they were previously.
* In addition, idxType for ranges, domains, and arrays is now int(64)
by default rather than the previous default of 'int(32)'
* As a result of the above changes, a number of built-in capabilities
now use default/64-bit integers rather than 32-bit:
- numLocales
- locale.numCores
- numThreadsPerLocale/maxThreadsPerLocale
- code line numbers
* Unrelated to the above, but because I was reviewing the uses of ints
in internal/standard modules, a number of things that previously
returned a uint now return a default-sized int under the argument
that (a) uints are a pain to use, and (b) ints are now big enough
that they're probably OK:
- locale.callStackSize
- locale.totalThreads()
- locale.idleThreads()
- locale.queuedTasks()
- locale.runningTasks()
- locale.memMax
- locale.memThreadshold
- callStackSize
* in most contexts after scope resolution, all types now print out
their width whether or not they are the default size for the
purposes of clarity. Previously, a default-sized int would print
out as 'int' rather than 'int(32)', for example. Now it prints out
as 'int(64)'. The main exception is that for function prototypes,
because we capture the user's strings and print them out in some
contexts, if the user did not use an explicit width, it will not
show up in this context.
This is implemented by renaming the symbols at the end of scope
resolution using a helper function named
renameDefaultTypesToReflectWidths().
Vass requested the ability to turn this off; doing so is easy, but I
have not made that change yet because I'd like to get some feedback
on whether anyone really wants it (just to avoid more flags for the
sake of flags). Having lived with the new scheme for a few months,
it seems clearly superior to me. (Getting rid of the capture of
user strings for function declarations would be even better, but I
did not take that on here).
* Improved function resolution to permit param int(64) values to
dispatch to smaller sized integer arguments if they fit, yet to
generally not impact the choice of candidate calls unless all else
is equal. An example case that this improved is that previously,
an int(64) param value would not dispatch to an int(32) argument,
even if the param value fit in an int(32). For example:
proc foo(x: int(32)) {
writeln("In foo");
}
param small64: int(64) = 64;
foo(small64);
would not have dispatched. Now it does.
* Added an ability to trace the logic related to function resolution
disambiguation for a function identified with the --explain flag by
using -DENABLE_TRACING_OF_DISAMBIGUATION when recompiling
functionResolution.cpp. If I had spent more time making the
messages clear rather than just something that makes sense when
you're comparing program output to compiler source code, I would
have promoted this to a developer flag.
* Improved the output of the --explain-calls listing of candidates to
mark param arguments as such -- previously it did not because it
checked for INTENT_PARAM rather than whether or not the argument had
been instantiated as a param, which is necessary for instantiated
functions. Added a test to lock this in (test_explain2.chpl)
* Changed the by and # operators to accept arguments of either type
int(w) or uint(w) (or anything that can coerce to it) where the
indexType of the range is either int(w) or uint(w).
Incidental Changes:
===================
* made immediate::int_value() support 1-bit cases (bools) in addition
to the other widths
* killed dead code in chplio.c and chplio.h that I noticed was dead
when updating it to reflect default 64-bit integers.
* added new utility functions to Types.chpl, used in ChapelRange.chpl:
- chpl__unsignedType(type t) type : given an integer type, returns
the unsigned integer type with the same width
- chpl__maxIntTypeSameSign(type t) type : given an integer type,
returns the largest integer type with the same int/uint-ness
* created a typeToString(x) overload to catch cases where a value is
accidentally sent to typeToString instead of a type and generate a
more helpful error message.
* removed use of strcmp's against 'int', 'uint', etc. for query types
(e.g., int(?w)) in normalize.cpp -- makes code more efficient and
robust.
Notes for future improvements:
==============================
1. note that a default-sized integer literal/param will now prefer to
dispatch to a 64-bit argument before looking for smaller argument
type matches based on its actual value. While this is the same
behavior as before, somehow it seems less arbitrary when the default
integer type is the largest size rather than the second-to-largest.
This raised a couple of semantic questions for me:
a) should we only support ops, like +, on param values of type
int(64) and uint(64) since they lose no accuracy and result in
default-sized ints which can thereafter be downcast to smaller
types without any problem? This seems attractive. At the very
least it could be done for functions like comparators (==, <=)
whose return type is independent of the input types.
AND/OR
b) should we permit param int types other than the default size
cast to smaller int types just like int(64)s do if there isn't
an exact match. This should be a fairly simple change to
paramWorks() in functionResolution.cpp. If not for all int
sizes, what about the default-sized uint? (or do we already do
this?)
2. resolution behavior for enums hasn't changed, for better or worse.
Which is to say, we weren't always happy with them before (see
Vass' recent futures) and it would've been nice to fix them at the
same time given that they should behave a lot like default-sized
int params.
One way in which enums have gotten more annoying is that enum ranges
dispatch to the 32-bit build_range() routine, as always, yet because
default ints are no longer 32-bits, this results in a different
range type than you'd get from a range with the equivalent integer
literals. So for example, myEnum.S..myEnum..C creates a
range(int(32)) as it used to, but since most ranges are
range(int(64))s this can be annoying. This suggests the following
TODOs:
a) make enums more like param int(64)s w.r.t. dispatch, at which
point they would dispatch to the int(64) version of
build_range(), and be back to being more like a default-sized
int.
- this would permit removing casts that I had to insert into
cg-arithDomArr.chpl, amr/lib/grid/Grid_def.chpl, and
enumarray.chpl to get them to keep working as they used to.
b) support build_range() overloads for smaller int/uint types.
There's really no reason not to support smaller int/uint
overloads of build_range() so that one can build a compact
range without explciitly declaring its type. I started to take
this on, but it had more ramifications in the implementations
of the range operators than I would've liked because all the
math had to be downcast to make it keep working, so I saved it
for a separate change.
3. At some point on email, Michael Ferguson suggested that if the
compiler treated integers as records with a param 'bitwidth' field
that we may be able to unify default-sized ints and
explicitly-sized ints a bit more in the compiler rather than
treating default-sized ints as a special case in function
resolution which is tempting. I didn't take that on in this change
(because it felt like a bigger delta), but it would potentially
also have other benefits like permitting one to declare integers
using named arguments (i.e., int(bitwidth=64)). I suspect that the
main challenges might relate to the fact that the compiler has an
understanding of the int types from a param perspective, but does
not have a notion of param records (yet), so that would need to be
resolved in some way.
Changes to implementation code:
===============================
compiler/AST/type.cpp
---------------------
* made compiler create 'int' as int(64) for the early phases rather
than int(32)
compile/ifa/num.h
-----------------
* added #defines for BOOL_SIZE_DEFAULT, INT_SIZE_DEFAULT,
FLOAT_SIZE_DEFAULT, and COMPLEX_SIZE_DEFAULT which should be used
when possible instead of hard-coding a specific size into the
compiler
compiler/include/symbol.h
compiler/AST/build.cpp
-------------------------
* made new_IntSymbol(), new_UIntSymbol(), and buildIntLiteral()
generate 64-bit values by default
compiler/passes/scopeResolve.cpp
--------------------------------
* renamed 'int', 'uint', etc. to 'int(64)', 'uint(64)', etc. here so
that the rest of the compiler uses the full names
compiler/AST/primitive.cpp
--------------------------
* added ability for primitives to return default integers as well as
32-bit and 64-bit integers
* made the following primitives return default ints:
- get_union_id
- chpl_string_compare
- string_length
- real2int
- object2int
- chpl_numPrivatizedClasses
- get_user_line
* made the following primitives return int(64)s:
- chpl_comm_default_num_locales
- _get_locale
- chpl_localeID
- chpl_on_locale_num
- chpl_numThreads
- chpl_numIdleThreads
- chpl_numQueuedThreads
- chpl_numBlockedTasks
(note that the choice between placing a primitive into one of the
above two categories was somewhat arbitrary and could be debated
further in terms of consistency, forward portability, space
utilization, etc.)
* removed some dead code related to chplio.c
Made a bunch of places in the compiler that used 32-bit ints explicitly
change to use default-sized ints
-----------------------------------------------------------------------
compilas/AST/iterator.cpp
compiler/passes/insertLineNumbers.cpp
compiler/passes/parallel.cpp
compiler/resolution/lowerIterators.cpp
compiler/resolution/functionResolution.cpp
compiler/passes/normalize.cpp
-----------------------------
* for query types of primitive types (like int(?w)), removed a bogus
strcmp-based implementation and replaced it with a comparison
against the actual type symbol to avoid ambiguities.
compiler/resolution/functionResolution.cpp
------------------------------------------
* made printing of prototypes with param arguments print correctly
* improved function disambiguation for param arguments
Changed interfaces to return default ints/int(64)s explicitly rather
than C ints or int32_t's or uint(64)s:
-------------------------------
modules/internal/ChapelThreads.chpl
modules/internal/ChapelLocale.chpl
modules/internal/ChapelIO.chpl
runtime/include/chpl-comm-locales.h
runtime/include/chplcgfns.h
runtime/include/chplsys.h
runtime/src/comm/none/comm-none-locales.c
runtime/src/comm/pvm/comm-pvm-locales.c
runtime/src/comm/mpi/comm-mpi-locales.c
runtime/src/comm/gasnet/comm-gasnet-locales.c
runtime/src/comm/armci/comm-armci-locales.c
runtime/src/chplsys.c
modules/internal/ChapelNumLocales.chpl
compiler/include/primitive.h
compiler/AST/expr.cpp
compiler/optimization/optimizeOnClauses.cpp
--------------------------------------
* removed chpl_comm_default_num_locales primitive to use extern instead
modules/internal/ChapelBase.chpl
--------------------------------
* changed _cond_test() routines to use explicit cast to avoid
accidental upcast for smaller types
* made typeToString() generate a useful error message when called with
a non-type; alternatively, we could have it call typeToString(x.type)?
modules/internal/ChapelRange.chpl
modules/internal/ChapelRangeBase.chpl
---------------------------------------------------------------------
* Moved most of the interfaces related to the align, #, and by
operators to ChapelRange.chpl to get better dispatch for literals
and resolution; also changed the # and by operators to accept signed
and unsigned integers of the idxType (or things that coerce to
them).
* Changed # to always return a range of the same type as its input
argument, which seems better now that the default int size is now
the largest bit width. (I think we mostly had it before so that
0..#n would work well when n was an int(64)).
* Made the # operator compute and use different types, as computed by
a helper function chpl__computeTypeForCountMath() for its internal
math based on the above change.
* Changed chpl__add() now that the result type may differ from the
input type.
* Removed casts that are no longer necessary with better param
resolution
modules/internal/DefaultRectangular.chpl
----------------------------------------
* added a cast from int literal to idxType, presumably to get downcast
for small idxTypes
* noted that sizeof() should return a size_t rather than an int(32)
modules/internal/DefaultAssociative.chpl
----------------------------------------
* made the hash table's index type default-int rather than int(32).
Rewrote module code to use default ints/int(64)s
------------------------------------------------
modules/dists/BlockCycDist.chpl
modules/internal/ChapelArray.chpl
updated comment to reflect that 32-bit ints are no longer the default
---------------------------------------------------------------------
modules/dists/CyclicDist.chpl
modules/dists/BlockDist.chpl
Killed dead runtime code
------------------------
runtime/include/chplio.h
runtime/src/chplio.c
Changes to tests and spec tests
===============================
Updated primer description and behavior to reflect change to default int size
-----------------------------------------------------------------------------
test/release/examples/primers/procedures.chpl
test/release/examples/primers/procedures.good
Updated code to avoid explicit 64-bit idxTypes/ints since it's now the default
------------------------------------------------------------------------------
test/release/examples/hpcc/stream.chpl
test/release/examples/hpcc/variants/stream-promoted.chpl
test/release/examples/hpcc/HPCCProblemSize.chpl
test/release/examples/hpcc/fft.chpl
test/release/examples/hpcc/hpl.chpl
modules/dists/DSIUtil.chpl
Changed code to use 64-bit indices, simply because it's cleaner
---------------------------------------------------------------
test/release/examples/hpcc/ptrans.chpl
Removed explicit types which didn't add any value to this test and broke
with default sizes = 64 bits
------------------------------------------------------------------------
spec/Expressions.tex
Had to insert casts to make enum ranges work as expected
(see note for future improvements 2 above)
--------------------------------------------------------
test/npb/cg/bradc/cg-arithDomArr.chpl
test/arrays/bradc/enumarray.chpl
test/studies/amr/lib/grid/Grid_def.chpl
Changed test to use explicit 32-bit ints now that that's not the default
------------------------------------------------------------------------
test/param/diten/paramForDiffTypes2.chpl
test/modules/figueroa/DuplicateConfigVars/RandomNumber_rewrite.chpl
test/modules/figueroa/DuplicateConfigVars/RandomNumber.chpl
test/trivial/deitz/test_bpop2.chpl
test/trivial/deitz/test_bpop2.good
test/studies/shootout/chameneos-redux/chameneos-redux-cas.chpl
test/spec/marybeth/casts.chpl
test/domains/diten/multitypeIndex.chpl
test/parallel/taskPar/figueroa/taskParallel.chpl
test/parallel/taskPool/figueroa/ManyThreads.chpl
test/types/range/diten/rangeSlice.chpl
test/types/range/hilde/align.chpl
test/types/range/hilde/count.chpl
test/extern/sungeun/sizeof.chpl
test/extern/hilde/namedExtern.chpl
test/functions/this/bradc/domainSliceConfusion.chpl
test/functions/iterators/bradc/leadFollow/diffIndices.chpl
test/functions/iterators/bradc/leadFollow/followFlexType.chpl
spec/Ranges.tex
spec/Functions.tex
Changed .good file to reflect that sizes are printed for default types now
---------------------------------------------------------------------------
test/release/examples/primers/variables.good
test/expressions/diten/type_eqeq_value.good
test/expressions/bradc/reduceVsMathPrec2.good
test/expressions/vass/tuple-from-param-loop.good
test/param/diten/castParamToClass.good
test/arrays/deitz/runtime_types/test_array_type1.good
test/arrays/deitz/runtime_types/test_array_type3.good
test/arrays/deitz/runtime_types/test_array_type4.good
test/arrays/diten/privatizedArrayErrorMessage.good
test/arrays/diten/privatizedDomainErrorMessage.good
test/arrays/bradc/twoDasTwoOneDs.good
test/arrays/bradc/errors/badArrArgErrMsg.good
test/users/brodtkorb/coercionQuestion.good
test/users/ferguson/override_overload2.good
test/users/thom/passStrRngToNonstrRng.good
test/users/weili/raiseType4.good
test/users/weili/tuple2.good
test/users/weili/tuple4.good
test/users/weili/raiseType3.good
test/users/weili/raiseType2-blc2.good
test/users/weili/raiseType3-blc2.good
test/users/weili/tuple1.good
test/users/weili/tuple3.good
test/users/weili/raiseType-blc2.good
test/users/weili/raiseType-blc1a.good
test/users/weili/raiseType2.good
test/users/vass/verify-pos-floor-ceil-1.good
test/users/vass/param-uint-to-param-string.good
test/distributions/dm/t8.good
test/distributions/dm/t2.comm-none.good
test/distributions/dm/d.chpl
test/distributions/dm/t8.comm-none.good
test/distributions/dm/t2.good
test/distributions/vass/densify-1-self.good
test/distributions/robust/arithmetic/trivial/test_dot_eltType.good
test/distributions/robust/arithmetic/trivial/test_index_type.good
test/distributions/robust/associative/basic/domain_iter.good
test/distributions/robust/associative/basic/array_iter.good
test/distributions/robust/associative/basic/reduce.good
test/distributions/robust/associative/basic/zipper.good
test/distributions/robust/associative/basic/whole_domain_assign.good
test/distributions/robust/associative/basic/whole_array_assign.good
test/distributions/robust/associative/basic/promotion.good
test/optimizations/sungeun/RADOpt/access3d.good
test/optimizations/sungeun/RADOpt/access1d.comm-gasnet.good
test/optimizations/sungeun/RADOpt/access2d.comm-gasnet.good
test/optimizations/sungeun/RADOpt/access3d.comm-gasnet.good
test/optimizations/sungeun/RADOpt/access1d.good
test/optimizations/sungeun/RADOpt/access2d.good
test/multilocale/bradc/configBadValue.good
test/trivial/deitz/test_plusassign_error.good
test/trivial/deitz/test_bad_if.good
test/trivial/deitz/test_int8_error.good
test/trivial/deitz/test_coerce_inout.good
test/trivial/deitz/test_imag_coerce2.good
test/trivial/deitz/test_illegal_cast.good
test/trivial/shannon/readWriteComplex.good
test/trivial/bradc/compilerWarning.good
test/trivial/bradc/compilerDiagnostics.good
test/trivial/bradc/undefinedfn2.good
test/studies/beer/bradc/beer-promoted-infer.good
test/studies/hpcc/RA/marybeth/ra-uint-test1.good
test/studies/hpcc/RA/marybeth/ra-uint-test4.good
test/parallel/sync/diten/returnSync.good
test/sparse/bradc/denseIRV.good
test/classes/deitz/test_type_constructor_error.good
test/classes/deitz/test_type_in_class3.good
test/classes/deitz/test_type_constructor_error2.good
test/classes/hilde/explainInstantiation.good
test/classes/hilde/nestedGenericRecord.good
test/classes/diten/error_default_field_init.good
test/classes/bradc/overloadMethods/v4oneClassReturnNoMatch.good
test/classes/bradc/overloadMethods/v5bothReturnTypes.good
test/classes/bradc/thisWrongSize.good
test/execflags/shannon/help.good
test/execflags/shannon/configs/configVarInvalidInteger.good
test/execflags/shannon/configs/help/configVarModStrings1.partgood
test/execflags/shannon/configs/help/varNameQMark.partgood
test/execflags/shannon/configs/help/configVarTwoModules.partgood
test/execflags/shannon/configs/help/configVarSetTwoTypes.partgood
test/execflags/shannon/configs/help/basehelp.txt
test/execflags/shannon/configs/help/configVarSetOver.partgood
test/execflags/shannon/configs/help/configVar-Dash.partgood
test/types/file/freadNoFloat.good
test/types/file/freadNoInt.good
test/types/file/freadComplex.good
test/types/seq/deitz/aseq/test_aseq2-error.good
test/types/seq/bradc/emptySeq3.good
test/types/tuple/deitz/tupleArguments/test_param_tuple_arg1-error.good
test/types/tuple/deitz/test_tuple_component_type.good
test/types/tuple/diten/overload_destructure_args.good
test/types/tuple/bradc/onedetuple.good
test/types/range/hilde/typeMath.good
test/types/range/hilde/alignType.good
test/types/range/hilde/typeInference.good
test/types/range/hilde/rangeSliceStatic.good
test/types/range/bradc/mixSliceType.good
test/types/coerce/bradc/int2uint.good
test/types/scalar/hilde/wantInt64.good
test/types/scalar/hilde/constUintOvf.good
test/types/scalar/bradc/assignUintNegative.good
test/types/scalar/bradc/uint64FnInt.good
test/types/type_variables/deitz/test_two_types_in_class.good
test/types/type_variables/deitz/test_query_field11.good
test/types/type_variables/deitz/part1/test_clone_class1b.good
test/types/type_variables/deitz/part7/test_error1.good
test/types/type_variables/deitz/part7/construct-1b.good
test/types/type_variables/deitz/functions/test_foo5-error.good
test/types/type_variables/jplevyak/where-3-error.good
test/types/type_variables/jplevyak/construct-1.good
test/functions/deitz/test_invalid_param_instantiate.good
test/functions/deitz/iterators/test_override5_error.good
test/functions/deitz/test_explain_instantiation.good
test/functions/deitz/test_write_type_error.good
test/functions/deitz/varargs/test_varargs_types.good
test/functions/diten/fnGenericTupleArg.good
test/functions/sungeun/retType.good
test/functions/jplevyak/zeroarity-bound-error-2.good
test/functions/jplevyak/introduce-dispatch-1.good
test/functions/this/bradc/domainSliceConfusion.good
test/functions/bradc/queryClassArgGenerics-bad.good
test/functions/bradc/paramFnNonParamArgs/paramExample2.good
test/functions/iterators/bradc/compileTime/bothIter.good
test/functions/iterators/bradc/compileTime/paramIter.good
test/functions/iterators/bradc/compileTime/typeIter.good
test/functions/vass/proc-iter/error-iterating-over-procs-1.good
spec/Generics.tex
spec/Arrays.tex
test/users/vass/div-ceil-on-more-int-types-1.good
test/users/vass/sgn-1.good
test/types/string/bradc/string2ints/badstring2int2.good
test/types/string/bradc/string2ints/badstring2val.good
test/types/string/bradc/string2ints/badstring2int.good
Changed .chpl/.good/prediff file to reflect new min/max(int) values
-------------------------------------------------------------------
test/types/range/deitz/test_int8_range_big_stride.chpl
test/distributions/bradc/foundations/blockdist2.good
test/modules/sungeun/test_safeAdd.good
test/modules/sungeun/test_safeSub.good
test/trivial/deitz/test_max_range_iteration.good
test/trivial/waynew/int2uint.good
test/studies/590o/wk3/04literals.good
test/studies/hpcc/common/bradc/unit/multipleDomains2.good
test/studies/hpcc/common/bradc/unit/multipleDomains2.comm-none.good
test/domains/sungeun/assoc/plus_minus_equals.good
test/domains/sungeun/assoc/index_not_in_domain_2.good
test/domains/sungeun/assoc/plus_equals.good
test/domains/sungeun/assoc/minus_equals.good
test/domains/sungeun/assoc/index_not_in_domain_1.good
test/domains/sungeun/sparse/plus_minus_equals.good
test/domains/sungeun/sparse/index_not_in_domain_2.good
test/domains/sungeun/sparse/index_not_in_domain_1.good
test/types/seq/deitz/test_range.good
test/types/tuple/diten/testTupleTypeMinMax.good
test/types/range/bradc/degenRange.good
test/types/coerce/bradc/tostring.good
test/types/scalar/bradc/minmax.good
test/types/scalar/bradc/uint.good
test/types/scalar/bradc/bitwiseUintInt.good
test/compflags/sungeun/configs/basic/PREDIFF
Changed hpcc unit tests to use 64-bit integers
----------------------------------------------
test/studies/hpcc/common/bradc/unit/leadFollowOpt.chpl
test/studies/hpcc/common/bradc/unit/parBlock1D.chpl
Updated error message for 'by' operator with too-large value
------------------------------------------------------------
test/types/range/deitz/test_int8_range_big_stride.good
Changed .good/prediff to reflect memory required by default ints now
--------------------------------------------------------------------
test/memory/figueroa/LeakedMemory5.good
test/spec/marybeth/modulesexample.good
test/types/string/bradc/string2val.good
test/compflags/sungeun/configs/type_variables/PREDIFF
Changed .good to reflect that memMax is now a signed integer
------------------------------------------------------------
test/memory/shannon/memmaxIntOnly.good
Changed .good file to reflect reordering of associative domains due to
different default int size type
----------------------------------------------------------------------
test/release/examples/primers/domains.good
test/release/examples/ssca2/SSCA2_main.RMAT.good
test/users/shetag/assoc.good
test/users/shetag/assocarr.good
test/distributions/bradc/assoc/userAssoc.comm-none.good
test/distributions/bradc/assoc/userAssoc2.comm-none.good
test/studies/ssca2/graphio/graphio.good
test/domains/diten/assignRangeTupToDom.good
test/domains/diten/assignStridedRangeTupToDom.good
Changed .chpl to avoid sensitivity to associative domain printing order
-----------------------------------------------------------------------
test/arrays/deitz/part5/test_assoc_of_arith.chpl
Changed test to reflect that we can no longer trivially mix default
int/uint values
-------------------------------------------------------------------
test/arrays/dinan/mvm.chpl
test/trivial/diten/fold_cond_stmt.chpl
test/studies/shootout/mandelbrot/mandelbrot-complex.chpl
test/studies/shootout/mandelbrot/mandelbrot-dist.chpl
test/studies/shootout/pidigits/hilde/pidigits.chpl
test/parallel/begin/dinan/mvm_coforall.chpl
Changed a typedef to use a default-sized integer to avoid downcasting
numLocales
---------------------------------------------------------------------
test/distributions/dm/f.chpl
Changed test to preserve spirit by changing types to get a different downcast
-----------------------------------------------------------------------------
test/trivial/deitz/test_integer_method3.chpl
test/trivial/deitz/test_integer_method3.good
test/classes/diten/breakList.good
test/classes/diten/breakList.chpl
Changed test to preserve spirit by switching to 64-bit values
-------------------------------------------------------------
test/trivial/marybeth/casts1.chpl
Updated .good to reflect that non-deterministic algorithm now differs
due to int(64) default
---------------------------------------------------------------------
test/studies/sudoku/dinan/sudoku.good
Updated code to use a c_int type to avoid assumptions about external int size
(This is essentially independent of the int64 change, except that making the
change starts to generate new warnings at C compilation time).
-----------------------------------------------------------------------------
test/studies/uts/sha1_rng.chpl
test/studies/uts/uts_deq.chpl
test/studies/uts/uts_rec.chpl
modules/standard/GMP.chpl
Updated test to use 64-bit external interface
---------------------------------------------
test/parallel/taskPool/figueroa/TooManyThreads.chpl
test/parallel/taskPool/figueroa/setLimit.h
test/parallel/taskPool/figueroa/setLimit.c
test/extern/sungeun/array_ops.c
test/extern/sungeun/array_ops.h
Updated tests to reflect current error cases and to show all errors
using the --ignore-errors flag
-------------------------------------------------------------------
test/types/range/hilde/byTypeError1.chpl
test/types/range/hilde/byTypeError1.good
test/types/range/hilde/alignTypeError1.chpl
test/types/range/hilde/alignTypeError1.good
test/types/range/hilde/countTypeError1.chpl
test/types/range/hilde/countTypeError1.good
Updated tests to reflect new range operator definitions/overloads
-----------------------------------------------------------------
test/types/range/hilde/countType.chpl
test/types/range/hilde/countType.good
test/types/range/hilde/alignType.chpl
test/types/range/hilde/alignType.good
test/types/range/hilde/by.chpl
test/types/range/hilde/by.good
test/types/range/hilde/byType.chpl
test/types/range/hilde/byType.good
test/types/range/hilde/typeMath.chpl
Updated output to reflect new behavior now that ints are 64-bits
----------------------------------------------------------------
test/functions/bradc/paramFnNonParamArgs/paramExample.2-0.good
New tests to test various resolution cases
------------------------------------------
test/functions/bradc/resolution/*.chpl
test/functions/bradc/paramVsNon.chpl
New test to lock in that --explain doesn't drop 'param' labels
--------------------------------------------------------------
test/functions/deitz/test_explain2.chpl
git-svn-id: http://svn.code.sf.net/p/chapel/code/trunk@19802 3a8e244f-b0f2-452b-bcba-4c88e055c3ca