rust/src/test/ui/resolve
David Wood ccbf2b76a6
resolve: prohibit foreign statics w/ generics
This commit modifies resolve to disallow foreign statics that use
parent generics.

`improper_ctypes` is not written to support type parameters, as these
are normally disallowed before the lint is run. Thus, type parameters in
foreign statics must be prohibited before the lint.

The only other case where this *could* have occured is in functions,
but typeck prohibits this with a "foreign items may not have type
parameters" error - a similar error did not exist for statics, because
statics cannot have type parameters, but they can use any
type parameters that are in scope (which isn't the case for functions).

Signed-off-by: David Wood <david@davidtw.co>
2019-10-08 18:46:24 +01:00
..
auxiliary Moved issue tests to subdirs and normalised names. 2019-03-14 01:00:49 +00:00
block-with-trait-parent.rs resolve: Adjust hygienic_lexical_parent to account for enum and trait modules 2019-09-07 17:42:24 +03:00
enums-are-namespaced-xc.rs Remove licenses 2018-12-25 21:08:33 -07:00
enums-are-namespaced-xc.stderr diagnostics: Describe crate root modules in DefKind::Mod as "crate" 2019-08-10 23:17:20 +03:00
issue-2356.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-2356.stderr review comments: change wording 2019-04-18 18:39:56 -07:00
issue-3907-2.rs Update ui test suite to use dyn 2019-05-29 00:57:31 -04:00
issue-3907-2.stderr account for DUMMY_SP and correct wording 2019-09-02 22:11:29 -07:00
issue-3907.rs Update ui test suite to use dyn 2019-05-29 00:57:31 -04:00
issue-3907.stderr Moved issue tests to subdirs and normalised names. 2019-03-14 01:00:49 +00:00
issue-5035-2.rs Update ui test suite to use dyn 2019-05-29 00:57:31 -04:00
issue-5035-2.stderr Fix broken links to second edition TRPL. 2019-01-01 12:53:07 -05:00
issue-5035.rs Update ui test suite to use dyn 2019-05-29 00:57:31 -04:00
issue-5035.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
issue-6702.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-6702.stderr Point at definition when misusing ADT 2019-09-22 11:27:55 -07:00
issue-14254.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-14254.stderr Change suggestion of field when not in self context 2019-04-18 18:39:56 -07:00
issue-16058.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-16058.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
issue-17518.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-17518.stderr Update tests 2019-03-11 23:10:26 +03:00
issue-18252.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-18252.stderr Point at definition when misusing ADT 2019-09-22 11:27:55 -07:00
issue-19452.rs Moved issue tests to subdirs and normalised names. 2019-03-14 01:00:49 +00:00
issue-19452.stderr Point at definition when misusing ADT 2019-09-22 11:27:55 -07:00
issue-21221-1.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-21221-1.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
issue-21221-2.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-21221-2.stderr Remove licenses 2018-12-25 21:08:33 -07:00
issue-21221-3.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-21221-3.stderr Remove licenses 2018-12-25 21:08:33 -07:00
issue-21221-4.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-21221-4.stderr Remove licenses 2018-12-25 21:08:33 -07:00
issue-22692.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-22692.stderr Deduplicate code for path suggestion 2019-03-24 19:43:02 -07:00
issue-23305.rs Update ui test suite to use dyn 2019-05-29 00:57:31 -04:00
issue-23305.stderr Update ui test suite to use dyn 2019-05-29 00:57:31 -04:00
issue-24968.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-24968.stderr Remove licenses 2018-12-25 21:08:33 -07:00
issue-33876.rs Update ui test suite to use dyn 2019-05-29 00:57:31 -04:00
issue-33876.stderr Update ui test suite to use dyn 2019-05-29 00:57:31 -04:00
issue-39226.rs Remove licenses 2018-12-25 21:08:33 -07:00
issue-39226.stderr Point at definition when misusing ADT 2019-09-22 11:27:55 -07:00
issue-54379.rs Do not complain about unmentioned fields in recovered patterns 2019-03-14 18:28:24 -07:00
issue-54379.stderr Do not complain about unmentioned fields in recovered patterns 2019-03-14 18:28:24 -07:00
issue-57523.rs Migrate compile-pass annotations to build-pass 2019-07-03 06:30:28 +09:00
issue-65025-extern-static-parent-generics.rs resolve: prohibit foreign statics w/ generics 2019-10-08 18:46:24 +01:00
issue-65025-extern-static-parent-generics.stderr resolve: prohibit foreign statics w/ generics 2019-10-08 18:46:24 +01:00
issue-65035-static-with-parent-generics.rs resolve: prohibit foreign statics w/ generics 2019-10-08 18:46:24 +01:00
issue-65035-static-with-parent-generics.stderr resolve: prohibit foreign statics w/ generics 2019-10-08 18:46:24 +01:00
levenshtein.rs Remove licenses 2018-12-25 21:08:33 -07:00
levenshtein.stderr resolve: Visit all scopes to collect suggestion candidates for unresolved macros 2019-07-18 13:42:45 +03:00
name-clash-nullary.rs Remove licenses 2018-12-25 21:08:33 -07:00
name-clash-nullary.stderr Update tests 2019-03-11 23:10:26 +03:00
privacy-enum-ctor.rs Remove licenses 2018-12-25 21:08:33 -07:00
privacy-enum-ctor.stderr Point at definition when misusing ADT 2019-09-22 11:27:55 -07:00
privacy-struct-ctor.rs Remove licenses 2018-12-25 21:08:33 -07:00
privacy-struct-ctor.stderr Point at definition when misusing ADT 2019-09-22 11:27:55 -07:00
resolve-assoc-suggestions.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-assoc-suggestions.stderr update ui tests 2019-09-25 16:41:05 +02:00
resolve-bad-import-prefix.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-bad-import-prefix.stderr Update tests 2019-03-11 23:10:26 +03:00
resolve-bad-visibility.rs resolve: Move late resolution into a separate visitor 2019-08-10 13:15:15 +03:00
resolve-bad-visibility.stderr resolve: Address FIXME from the previous commit 2019-08-10 13:48:17 +03:00
resolve-conflict-extern-crate-vs-extern-crate.rs Remove lint annotations in specific crates that are already enforced by rustbuild 2019-07-28 18:46:24 +03:00
resolve-conflict-extern-crate-vs-extern-crate.stderr Remove lint annotations in specific crates that are already enforced by rustbuild 2019-07-28 18:46:24 +03:00
resolve-conflict-import-vs-extern-crate.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-conflict-import-vs-extern-crate.stderr Update tests 2019-03-11 23:10:26 +03:00
resolve-conflict-import-vs-import.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-conflict-import-vs-import.stderr Mark duplicate import removal suggestion tool only 2019-03-23 13:05:30 -07:00
resolve-conflict-item-vs-extern-crate.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-conflict-item-vs-extern-crate.stderr Update tests 2019-03-11 23:10:26 +03:00
resolve-conflict-item-vs-import.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-conflict-item-vs-import.stderr Remove licenses 2018-12-25 21:08:33 -07:00
resolve-conflict-type-vs-import.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-conflict-type-vs-import.stderr Remove licenses 2018-12-25 21:08:33 -07:00
resolve-hint-macro.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-hint-macro.stderr use structured macro and path resolve suggestions 2019-01-15 11:27:58 -05:00
resolve-inconsistent-binding-mode.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-inconsistent-binding-mode.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
resolve-inconsistent-names.rs Suggest using a qualified path in patterns with inconsistent bindings 2019-08-10 21:09:53 +00:00
resolve-inconsistent-names.stderr Apply suggestions from code review 2019-08-10 21:09:53 +00:00
resolve-label.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-label.stderr Update tests 2019-03-11 23:10:26 +03:00
resolve-primitive-fallback.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-primitive-fallback.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
resolve-self-in-impl-2.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-self-in-impl-2.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
resolve-self-in-impl.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-self-in-impl.stderr Update tests 2019-03-11 23:10:26 +03:00
resolve-speculative-adjustment.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-speculative-adjustment.stderr Change suggestion of field when not in self context 2019-04-18 18:39:56 -07:00
resolve-type-param-in-item-in-trait.rs Make name resolution handle consts in GenericParamsFromOuterFunction properly 2019-02-07 15:03:20 +01:00
resolve-type-param-in-item-in-trait.stderr Resolve inconsistency in error messages between "parameter" and "variable". 2019-04-17 13:25:07 +03:00
resolve-unknown-trait.rs Remove licenses 2018-12-25 21:08:33 -07:00
resolve-unknown-trait.stderr Remove licenses 2018-12-25 21:08:33 -07:00
resolve-variant-assoc-item.rs clarify what the item is in "not a module" error 2019-04-10 12:55:21 -04:00
resolve-variant-assoc-item.stderr clarify what the item is in "not a module" error 2019-04-10 12:55:21 -04:00
suggest-path-instead-of-mod-dot-item.rs Remove licenses 2018-12-25 21:08:33 -07:00
suggest-path-instead-of-mod-dot-item.stderr use structured macro and path resolve suggestions 2019-01-15 11:27:58 -05:00
token-error-correct-2.rs Remove licenses 2018-12-25 21:08:33 -07:00
token-error-correct-2.stderr Update tests 2019-03-11 23:10:26 +03:00
token-error-correct-3.rs Do not emit type errors after parse error in last statement of block 2019-07-12 18:55:01 -07:00
token-error-correct-3.stderr Do not emit type errors after parse error in last statement of block 2019-07-12 18:55:01 -07:00
token-error-correct.rs Add missing trailing newline 2019-02-07 01:42:54 -08:00
token-error-correct.stderr Update tests 2019-03-11 23:10:26 +03:00
tuple-struct-alias.rs Remove licenses 2018-12-25 21:08:33 -07:00
tuple-struct-alias.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
unboxed-closure-sugar-nonexistent-trait.rs Remove licenses 2018-12-25 21:08:33 -07:00
unboxed-closure-sugar-nonexistent-trait.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
unresolved_static_type_field.rs Remove licenses 2018-12-25 21:08:33 -07:00
unresolved_static_type_field.stderr review comments: change wording 2019-04-18 18:39:56 -07:00
use_suggestion_placement.rs Remove licenses 2018-12-25 21:08:33 -07:00
use_suggestion_placement.stderr hide --explain hint if error has no extended info 2019-04-18 13:29:28 -04:00
visibility-indeterminate.rs resolve: Remove ! from "cannot find" diagnostics for macros 2019-09-15 13:22:07 +03:00
visibility-indeterminate.stderr resolve: Remove ! from "cannot find" diagnostics for macros 2019-09-15 13:22:07 +03:00