89 lines · plain
1! UNSUPPORTED: system-windows2! REQUIRES: plugins, shell, examples3 4! RUN: %flang_fc1 -load %llvmshlibdir/flangFeatureList%pluginext \5! RUN: -plugin feature-list %s 2>&1 | FileCheck %s6 7module list_features_test8 implicit none9 10 type :: test_class_111 integer :: a12 real :: b13 contains14 procedure :: sum => sum_test_class_115 procedure :: set => set_values_test_class_116 end type17contains18 real function sum_test_class_1(self)19 class(test_class_1), intent(in) :: self20 sum_test_class_1 = self%a + self%b21 end function22 23 subroutine set_values_test_class_1(self, a, b)24 class(test_class_1), intent(out) :: self25 integer, intent(in) :: a, b26 self%a = a27 self%b = b28 end subroutine29end module list_features_test30 31! CHECK: Name: 3232! CHECK-NEXT: DataRef: 1133! CHECK-NEXT: Designator: 734! CHECK-NEXT: DeclarationTypeSpec: 635! CHECK-NEXT: Expr: 536! CHECK-NEXT: DeclarationConstruct: 437! CHECK-NEXT: EntityDecl: 438! CHECK-NEXT: IntrinsicTypeSpec: 439! CHECK-NEXT: SpecificationConstruct: 440! CHECK-NEXT: StructureComponent: 441! CHECK-NEXT: ActionStmt: 342! CHECK-NEXT: AssignmentStmt: 343! CHECK-NEXT: AttrSpec: 344! CHECK-NEXT: DummyArg: 345! CHECK-NEXT: ExecutableConstruct: 346! CHECK-NEXT: ExecutionPartConstruct: 347! CHECK-NEXT: ImplicitPart: 348! CHECK-NEXT: IntentSpec: 349! CHECK-NEXT: IntentSpec::Intent: 350! CHECK-NEXT: SpecificationPart: 351! CHECK-NEXT: TypeDeclarationStmt: 352! CHECK-NEXT: Variable: 353! CHECK-NEXT: Block: 254! CHECK-NEXT: ComponentDecl: 255! CHECK-NEXT: ComponentDefStmt: 256! CHECK-NEXT: ComponentOrFill: 257! CHECK-NEXT: ContainsStmt: 258! CHECK-NEXT: DataComponentDefStmt: 259! CHECK-NEXT: DeclarationTypeSpec::Class: 260! CHECK-NEXT: DerivedTypeSpec: 261! CHECK-NEXT: ExecutionPart: 262! CHECK-NEXT: IntegerTypeSpec: 263! CHECK-NEXT: IntrinsicTypeSpec::Real: 264! CHECK-NEXT: ModuleSubprogram: 265! CHECK-NEXT: TypeBoundProcBinding: 266! CHECK-NEXT: TypeBoundProcDecl: 267! CHECK-NEXT: TypeBoundProcedureStmt: 268! CHECK-NEXT: TypeBoundProcedureStmt::WithoutInterface: 269! CHECK-NEXT: DerivedTypeDef: 170! CHECK-NEXT: DerivedTypeStmt: 171! CHECK-NEXT: EndFunctionStmt: 172! CHECK-NEXT: EndModuleStmt: 173! CHECK-NEXT: EndSubroutineStmt: 174! CHECK-NEXT: EndTypeStmt: 175! CHECK-NEXT: Expr::Add: 176! CHECK-NEXT: FunctionStmt: 177! CHECK-NEXT: FunctionSubprogram: 178! CHECK-NEXT: ImplicitPartStmt: 179! CHECK-NEXT: ImplicitStmt: 180! CHECK-NEXT: Module: 181! CHECK-NEXT: ModuleStmt: 182! CHECK-NEXT: ModuleSubprogramPart: 183! CHECK-NEXT: PrefixSpec: 184! CHECK-NEXT: Program: 185! CHECK-NEXT: ProgramUnit: 186! CHECK-NEXT: SubroutineStmt: 187! CHECK-NEXT: SubroutineSubprogram: 188! CHECK-NEXT: TypeBoundProcedurePart: 189