clang: lib/Sema/SemaM68k.cpp Source File (original) (raw)

1

2

3

4

5

6

7

8

9

10

11

12

19

22

25 return;

26

28 Diag(AL.getLoc(), diag::err_attribute_argument_type)

30 return;

31 }

32

33

34

37 if (!MaybeNumParams) {

38 Diag(AL.getLoc(), diag::err_attribute_argument_type)

41 return;

42 }

43

44 unsigned Num = MaybeNumParams->getLimitedValue(255);

45 if ((Num & 1) || Num > 30) {

46 Diag(AL.getLoc(), diag::err_attribute_argument_out_of_bounds)

47 << AL << (int)MaybeNumParams->getSExtValue()

49 return;

50 }

51

54 D->addAttr(UsedAttr::CreateImplicit(getASTContext()));

55}

56}

Defines the clang::ASTContext interface.

This file declares semantic analysis functions specific to M68k.

SourceLocation getLoc() const

Decl - This represents one declaration (or definition), e.g.

This represents one expression.

std::optional< llvm::APSInt > getIntegerConstantExpr(const ASTContext &Ctx, SourceLocation *Loc=nullptr) const

isIntegerConstantExpr - Return the value if this expression is a valid integer constant expression.

ParsedAttr - Represents a syntactic attribute.

bool checkExactlyNumArgs(class Sema &S, unsigned Num) const

Check if the attribute has exactly as many args as Num.

Expr * getArgAsExpr(unsigned Arg) const

bool isArgExpr(unsigned Arg) const

SemaDiagnosticBuilder Diag(SourceLocation Loc, unsigned DiagID, bool DeferHint=false)

Emit a diagnostic.

ASTContext & getASTContext() const

void handleInterruptAttr(Decl *D, const ParsedAttr &AL)

Sema - This implements semantic analysis and AST building for C.

SourceRange getSourceRange() const LLVM_READONLY

SourceLocation tokens are not useful in isolation - they are low level value objects created/interpre...

The JSON file list parser is used to communicate input to InstallAPI.

@ AANT_ArgumentIntegerConstant