Merge branch 'master' of https://github.com/chapel-lang/chapel
Fixed a minor glitch in each of sub_test and paratest.server
Call default constructor by name.

In the compiler-generated _defaultOf() function, set up the call to the zero-args
constructor using its name rather than pre-resolving it to the all-fields constructor.
This will allow binding a user-defined default (zero-args) constructor if there is one.

Also, simplified the logic and flattened the loop structure.
Translate PRIM_INIT to _defaultOf() uniformly.

The existing code determines if there is a user-defined zero-args constructor and uses
that if there is, otherwise uses _defaultOf().

The compiler-supplied version of _defaultOf() now calls the user-defined default
constructor, so the test and extra code can be removed.
Accept improved behavior of explainIntantiation.

Making _defaultOf() call the zero-args constructor by name removed the inexplicable second
call to the range constructor in DefaultRectangularDom (a wrapper, perhaps), and replaced
it with an instantiation of the range type.  The runtime behavior is unaffected.

That instantiation chain seems more logical, so I'm putting this down as an improvement.
Remove generateConcreteConstructorCall() and helpers.

On-the-fly generation of concrete constructor calls is no longer necessary, because the
code that generates _defaultOf() was changed to call the zero-args constructor by name.
Since the insertion of the zero-args constructor call was moved there (buildDefaultArgs),
insertion at resolution time is no longer necessary.  So the above function and its
helpers have become dead code.

Also, I set up some asserts that will permit merging the tails of the two initialization
clauses.
Add pragma "compiler generated" to range.range as a workaround.

After reworking the compiler-generated version of _defaultOf() for a record type so it
calls the no-args constructor by name(!), the single test case
types/records/sungeun/chapelTypes/record_range fails because name lookup during resolution
does not work as specified.

I excerpted the pertinent text from the spec and added this to the test to underscore what
is expected.

I restored the desired behavior for this test case by adding the "compiler generated" flag
to the constructor range.range in ChapelRange.chpl, but this is an ugly hack.  The correct
solution would be to perform name lookup during resolution as required by the spec.
However, that change is likely to be significant, so I left it as a future effort.
Merged identical tails for two cases in resolvePrimInit().

Previously inserted asserts proved that the tail of the case for
  type->defaultValue || type->symbol->hasFlag(FLAG_TUPLE)
and
  type->defaultInitializer
could be merged and moved out to the top level.  So I did that (and removed the asserts).

I proved that the transformation was correct by running the full test suite, tossing both
--no-local and --verify flags.
Followed up on Tom's reviewer comments.
Make c_string_from_wide_string work with remote strings

Removes the error message that you "cannot create a C string from a
remote string", and instead creates a local copy of the remote string.

This local copy is leaked, we should be able to fix the leak when
switching over to the new string implementation.
Merge pull request #616 from vasslitvinov/minor-sub_test-paratest-fixes

Fixed a minor glitch in each of sub_test and paratest.server

* In sub_test, eliminate the confusion between $CHPL_HOME/test/users/USERNAME/... and /users/USERNAME.

I suspect that the conditional that I eliminated was added so you can say "start test somedir/sometest.chpl" and have it test $CHPL_HOME/test/somedir/sometest.chpl even when you are not in $CHPL_HOME/test. If so, sub_test does not implement this consistently. I.e. for a few sometest.* files, PREDIFF, etc., sub_test looks them up in the current directory always. So I force the other files to be looked up in the current directory, too.

* For "paratest.server --show-all-errors", show each error just once. While there, streamlined the code.

Reviewed by Tom.
Fix up a couple of comments in start_test
Merge pull request #681 from vasslitvinov/fixup-comments-in-start_test

Fixed up a couple of comments in start_test
that are related to $CHPL_TEST_PERF_DIR

One comment was technically incorrect.
For the other one I just fixed the phrasing.

Trivial, not reviewed.
Removing inline-oriented suppressions from baseline.suppress

For some time now, we've thrown --inline when doing --baseline
testing for reasons that I can't quite recall.  This has caused
tests that used to be suppressed for baseline testing (because
they test that inlining is working) to result in errors because
the expected suppression wasn't found.

This commit comments out those suppressions and adds an
explanation such that, if/when we make --baseline testing
just throw --baseline again, the history is visible in the
file.
Merge pull request #683 from bradcray/fix-baseline-suppressions

Removing inline-oriented suppressions from baseline.suppress

For some time now, we've thrown --inline when doing --baseline
testing for reasons that I can't quite recall. This has caused
tests that used to be suppressed for baseline testing (because
they test that inlining is working) to result in errors because
the expected suppression wasn't found.

This commit comments out those suppressions and adds an
explanation such that, if/when we make --baseline testing
just throw --baseline again, the history is visible in the
file.
Merge branch 'master' of https://github.com/bradcray/chapel
Add some advice for how to clean up your master branch of erroneous commits that
have not been pushed to your remote fork.
Strip leading whitespace to make refArgIsWide match on darwin
Update based on Kyle's comments
Merge pull request #684 from lydia-duncan/addGitAdvice

Git master branch fix advice [reviewed by Kyle]

Add some advice for how to clean up your master branch of erroneous commits
that have not been pushed to your remote fork.