<===> empty/input.scss
@use;

<===> empty/error
Error: Expected string.
  ,
1 | @use;
  |     ^
  '
  input.scss 1:5  root stylesheet

<===>
================================================================================
<===> as_nothing/input.scss
@use "foo" as;

<===> as_nothing/error
Error: Expected identifier.
  ,
1 | @use "foo" as;
  |              ^
  '
  input.scss 1:14  root stylesheet

<===>
================================================================================
<===> as_invalid/input.scss
@use "foo" as 1;

<===> as_invalid/error
Error: Expected identifier.
  ,
1 | @use "foo" as 1;
  |               ^
  '
  input.scss 1:15  root stylesheet

<===>
================================================================================
<===> url/unquoted/input.scss
@use foo;

<===> url/unquoted/error
Error: Expected string.
  ,
1 | @use foo;
  |      ^
  '
  input.scss 1:6  root stylesheet

<===>
================================================================================
<===> url/empty/input.scss
@use "";

<===> url/empty/error
Error: Invalid Sass identifier ""
  ,
1 | @use "";
  | ^^^^^^^
  '
  input.scss 1:1  root stylesheet

<===>
================================================================================
<===> url/non_identifier/input.scss
@use "123";

<===> url/non_identifier/error
Error: Invalid Sass identifier "123"
  ,
1 | @use "123";
  | ^^^^^^^^^^
  '
  input.scss 1:1  root stylesheet

<===>
================================================================================
<===> within/mixin/input.scss
@mixin foo {
  @use "other";
}

<===> within/mixin/error
Error: This at-rule is not allowed here.
  ,
2 |   @use "other";
  |   ^^^^^^^^^^^^
  '
  input.scss 2:3  root stylesheet

<===>
================================================================================
<===> within/function/input.scss
@function foo {
  @use "other";
}

<===> within/function/error
Error: expected "(".
  ,
1 | @function foo {
  |               ^
  '
  input.scss 1:15  root stylesheet

<===>
================================================================================
<===> within/style_rule/input.scss
a {
  @use "other";
}

<===> within/style_rule/error
Error: This at-rule is not allowed here.
  ,
2 |   @use "other";
  |   ^^^^^^^^^^^^
  '
  input.scss 2:3  root stylesheet

<===>
================================================================================
<===> after/at_rule/unknown/input.scss
@fblthp;
@use "other";

<===> after/at_rule/unknown/error
Error: @use rules must be written before any other rules.
  ,
2 | @use "other";
  | ^^^^^^^^^^^^
  '
  input.scss 2:1  root stylesheet

<===>
================================================================================
<===> after/at_rule/sass/input.scss
@if true {};
@use "other";

<===> after/at_rule/sass/error
Error: @use rules must be written before any other rules.
  ,
2 | @use "other";
  | ^^^^^^^^^^^^
  '
  input.scss 2:1  root stylesheet

<===>
================================================================================
<===> after/at_rule/import/input.scss
@import "other1";
@use "other2";

<===> after/at_rule/import/error
Error: @use rules must be written before any other rules.
  ,
2 | @use "other2";
  | ^^^^^^^^^^^^^
  '
  input.scss 2:1  root stylesheet

<===>
================================================================================
<===> after/at_rule/css/input.scss
@keyframes foo {};
@use "other";

<===> after/at_rule/css/error
Error: @use rules must be written before any other rules.
  ,
2 | @use "other";
  | ^^^^^^^^^^^^
  '
  input.scss 2:1  root stylesheet

<===>
================================================================================
<===> after/style_rule/input.scss
a {};
@use "other";

<===> after/style_rule/error
Error: @use rules must be written before any other rules.
  ,
2 | @use "other";
  | ^^^^^^^^^^^^
  '
  input.scss 2:1  root stylesheet

<===>
================================================================================
<===> after/indented/mixin/input.sass
=mixin
  a: b
@use "other"

<===> after/indented/mixin/error
Error: @use rules must be written before any other rules.
  ,
3 | @use "other"
  | ^^^^^^^^^^^^
  '
  input.sass 3:1  root stylesheet

<===>
================================================================================
<===> after/indented/include/input.sass
+mixin
@use "other"

<===> after/indented/include/error
Error: @use rules must be written before any other rules.
  ,
2 | @use "other"
  | ^^^^^^^^^^^^
  '
  input.sass 2:1  root stylesheet

<===>
================================================================================
<===> member/identifier_only/input.scss
// A namespaced identifier with neither parentheses for a function nor a leading
// dollar sign for a variable is invalid syntax.
a {a: namespace.member}

<===> member/identifier_only/error
Error: expected "(".
  ,
3 | a {a: namespace.member}
  |                       ^
  '
  input.scss 3:23  root stylesheet

<===>
================================================================================
<===> member/function/no_namespace/input.scss
a {a: .member()}

<===> member/function/no_namespace/error
Error: Expected digit.
  ,
1 | a {a: .member()}
  |        ^
  '
  input.scss 1:8  root stylesheet

<===>
================================================================================
<===> member/function/no_member/input.scss
a {a: namespace.()}

<===> member/function/no_member/error
Error: Expected identifier.
  ,
1 | a {a: namespace.()}
  |                 ^
  '
  input.scss 1:17  root stylesheet

<===>
================================================================================
<===> member/function/private/input.scss
a {a: namespace._member()}

<===> member/function/private/error
Error: Private members can't be accessed from outside their modules.
  ,
1 | a {a: namespace._member()}
  |                 ^^^^^^^
  '
  input.scss 1:17  root stylesheet

<===>
================================================================================
<===> member/function/definition/input.scss
@function namespace.member() {@return null}

<===> member/function/definition/error
Error: expected "(".
  ,
1 | @function namespace.member() {@return null}
  |                    ^
  '
  input.scss 1:20  root stylesheet

<===>
================================================================================
<===> member/variable/no_namespace/input.scss
a {a: $.member}

<===> member/variable/no_namespace/error
Error: Expected identifier.
  ,
1 | a {a: $.member}
  |        ^
  '
  input.scss 1:8  root stylesheet

<===>
================================================================================
<===> member/variable/no_member/input.scss
a {a: namespace.$}

<===> member/variable/no_member/error
Error: Expected identifier.
  ,
1 | a {a: namespace.$}
  |                  ^
  '
  input.scss 1:18  root stylesheet

<===>
================================================================================
<===> member/variable/private/input.scss
a {a: namespace.$_member}

<===> member/variable/private/error
Error: Private members can't be accessed from outside their modules.
  ,
1 | a {a: namespace.$_member}
  |       ^^^^^^^^^^^^^^^^^^
  '
  input.scss 1:7  root stylesheet

<===>
================================================================================
<===> member/variable/global/input.scss
namespace.$member: value !global;

<===> member/variable/global/error
Error: !global isn't allowed for variables in other modules.
  ,
1 | namespace.$member: value !global;
  |                          ^^^^^^^
  '
  input.scss 1:26  root stylesheet

<===>
================================================================================
<===> member/mixin/no_namespace/input.scss
a {@include .member}

<===> member/mixin/no_namespace/error
Error: Expected identifier.
  ,
1 | a {@include .member}
  |             ^
  '
  input.scss 1:13  root stylesheet

<===>
================================================================================
<===> member/mixin/no_member/input.scss
a {@include namespace.}

<===> member/mixin/no_member/error
Error: Expected identifier.
  ,
1 | a {@include namespace.}
  |                       ^
  '
  input.scss 1:23  root stylesheet

<===>
================================================================================
<===> member/mixin/private/input.scss
a {@include namespace._member}

<===> member/mixin/private/error
Error: Private members can't be accessed from outside their modules.
  ,
1 | a {@include namespace._member}
  |                       ^^^^^^^
  '
  input.scss 1:23  root stylesheet

<===>
================================================================================
<===> member/mixin/definition/input.scss
@mixin namespace.member() {}

<===> member/mixin/definition/error
Error: expected "{".
  ,
1 | @mixin namespace.member() {}
  |                 ^
  '
  input.scss 1:17  root stylesheet

<===>
================================================================================
<===> member/unused_private/input.scss
// Private member usage is a syntax error, so it should fail at parse time
// without needing to be executed.
@function foo() {
  @debug namespace.$_member;
}

<===> member/unused_private/error
Error: Private members can't be accessed from outside their modules.
  ,
4 |   @debug namespace.$_member;
  |          ^^^^^^^^^^^^^^^^^^
  '
  input.scss 4:10  root stylesheet

<===>
================================================================================
<===> with/empty/input.scss
@use "other" with ();

<===> with/empty/error
Error: expected "$".
  ,
1 | @use "other" with ();
  |                    ^
  '
  input.scss 1:20  root stylesheet

<===>
================================================================================
<===> with/missing_keyword/input.scss
@use "other" with (a);

<===> with/missing_keyword/error
Error: expected "$".
  ,
1 | @use "other" with (a);
  |                    ^
  '
  input.scss 1:20  root stylesheet

<===>
================================================================================
<===> with/missing_value/input.scss
@use "other" with ($a);

<===> with/missing_value/error
Error: expected ":".
  ,
1 | @use "other" with ($a);
  |                      ^
  '
  input.scss 1:22  root stylesheet

<===>
================================================================================
<===> with/space_after_dollar/input.scss
@use "other" with ($ a: b);

<===> with/space_after_dollar/error
Error: Expected identifier.
  ,
1 | @use "other" with ($ a: b);
  |                     ^
  '
  input.scss 1:21  root stylesheet

<===>
================================================================================
<===> with/namespace_variable/input.scss
@use "other" with (a.$b: c);

<===> with/namespace_variable/error
Error: expected "$".
  ,
1 | @use "other" with (a.$b: c);
  |                    ^
  '
  input.scss 1:20  root stylesheet

<===>
================================================================================
<===> with/extra_comma/input.scss
@use "other" with ($a: b,,);

<===> with/extra_comma/error
Error: expected ")".
  ,
1 | @use "other" with ($a: b,,);
  |                          ^
  '
  input.scss 1:26  root stylesheet

<===>
================================================================================
<===> with/default/input.scss
@use "other" with ($a: b !default);

<===> with/default/error
Error: expected ")".
  ,
1 | @use "other" with ($a: b !default);
  |                          ^
  '
  input.scss 1:26  root stylesheet

<===>
================================================================================
<===> with/no_arguments/input.scss
@use "other" with;

<===> with/no_arguments/error
Error: expected "(".
  ,
1 | @use "other" with;
  |                  ^
  '
  input.scss 1:18  root stylesheet

<===>
================================================================================
<===> with/before_as/input.scss
@use "other" with ($a: b) as c;


<===> with/before_as/error
Error: expected ";".
  ,
1 | @use "other" with ($a: b) as c;
  |                           ^
  '
  input.scss 1:27  root stylesheet