is documented: look up members of a type that are visible from a specific
module. It does not matter much now, but when we have access control, it will.
Before this change, lookupVisibleDecls() tried to guess the *defining* module
of the type, and gave up if it could not. It forced us to duplicate some
lookup logic for some types (archetypes and protocol compositions). Also add a
test that lookup finds members of archetype's superclass, which the original
(duplicated) code did not handle.
Swift SVN r6363
At some point this will change because of re-exported modules, but for now
just don't crash when performing unqualified lookup on a loaded module.
Also, auto-load our adapter libraries for loaded modules, not just TUs.
Include "POSIX" in this list. (We really need autolinking.)
Swift SVN r6303
* Added a mode in swift-ide-test to test code completion. Unlike c-index-test,
the code completion token in tests is a real token -- we don't need to
count lines and columns anymore.
* Added support in lexer to produce a code completion token.
* Added a parser interface to code completion. It is passed down from the
libFrontend to the parser, but its functions are not called yet.
* Added a sketch of the interface of code completion consumer and code
completion results.
Note: all this is not doing anything useful yet.
Swift SVN r6128
Swift requires a modules SDK on Darwin for ObjectiveC and Foundation modules.
On other OSes these modules don't exist. New name makes it clear that it
guards the darwin-specific stuff.
Swift SVN r5976
that were (incorrectly) folded on top of each other: 1) multiple file mode,
and 2) parser pumping mode. These modes were incompatible with each other
(and don't make sense together) so have the compiler reject attempts to make
use of them, and detangle the two cases from each other so that the flow is
more clear.
Swift SVN r5904
guard access to the Builtin module (on one path), reducing the number
of ways non-stdlib and non-sil files have access to the builtin module.
Swift SVN r5767
library. We use the same (somewhat broken heuristics), they are
just implemented in another way.
The major functionality change is that previously, .sil files would
auto import "swift" if they started with a non-sil decl. Now they
never do.
Swift SVN r5731
This is still total WIP. There's a bunch of copy-paste, both from other
parts of Swift and Clang. I want to see the end-to-end vision
first and then refactor. There's a bunch of subtle changes between
Clang's diagnostics and Swift's that require some care to handle,
as the serialized diagnostics were developed with Clang's in mind.
That should be fine, since Clang' will be more complicated, but the
differences are still there to be dealt with.
It's not clear if we will need the SharedState, as we do with Clang.
We'll keep it now since it isn't doing any harm.
Swift SVN r5507
This does absolutely nothing yet.
Serialized diagnostics provide a binary format that can be
read by libclang, and used to import diagnostics into clients
such as Xcode.
Swift SVN r5501
Instead of reusing a fixed-size buffer, which causes problems when error messages refer back to previous inputs and corrupts AST references in *LiteralExpr that point back into source buffers, allocate each REPL input into its own buffer with its own SourceMgr entry. Fixes <rdar://problem/13387167>, crashes when using :dump_ast on expressions containing integer/float literal expr nodes, and hopefully sporadic buildbot failures running the Interpreter/repl test.
Swift SVN r5470
Dump the module IR just prior to instantiating the execution engine, and log the start of module initializers, static constructors, and main().
Swift SVN r5430
This matches the behavior for compilation, and lets us test modules that
don't need any extra codegen.
With this, typealiases of builtins can be used end-to-end in modules!
Swift SVN r5326
by TranslationUnit. This list existed solely to allow name lookup of
an unbound IdentifierType to know its DeclContext. Instead of indirecting
through this list, just store the DeclContext in the IdentifierType in its
uninitialized state.
This eliminates a really terrible performance fixme about scanning the list,
eliminates the management fiddling around with this list in the parser, and
is generally much cleaner.
Swift SVN r5246
This paves the way for having a Swift module importer. The eventual goal
here is to eliminate all explicit uses of the Clang module loader, but
I'm not going to push too hard on that for now.
Swift SVN r5092