1--TEST-- 2Test semi-reserved words as static class methods 3--FILE-- 4<?php 5 6class Obj 7{ 8 static function empty(){ echo __METHOD__, PHP_EOL; } 9 static function callable(){ echo __METHOD__, PHP_EOL; } 10 static function class(){ echo __METHOD__, PHP_EOL; } 11 static function trait(){ echo __METHOD__, PHP_EOL; } 12 static function extends(){ echo __METHOD__, PHP_EOL; } 13 static function implements(){ echo __METHOD__, PHP_EOL; } 14 static function static(){ echo __METHOD__, PHP_EOL; } 15 static function abstract(){ echo __METHOD__, PHP_EOL; } 16 static function final(){ echo __METHOD__, PHP_EOL; } 17 static function public(){ echo __METHOD__, PHP_EOL; } 18 static function protected(){ echo __METHOD__, PHP_EOL; } 19 static function private(){ echo __METHOD__, PHP_EOL; } 20 static function const(){ echo __METHOD__, PHP_EOL; } 21 static function enddeclare(){ echo __METHOD__, PHP_EOL; } 22 static function endfor(){ echo __METHOD__, PHP_EOL; } 23 static function endforeach(){ echo __METHOD__, PHP_EOL; } 24 static function endif(){ echo __METHOD__, PHP_EOL; } 25 static function endwhile(){ echo __METHOD__, PHP_EOL; } 26 static function and(){ echo __METHOD__, PHP_EOL; } 27 static function global(){ echo __METHOD__, PHP_EOL; } 28 static function goto(){ echo __METHOD__, PHP_EOL; } 29 static function instanceof(){ echo __METHOD__, PHP_EOL; } 30 static function insteadof(){ echo __METHOD__, PHP_EOL; } 31 static function interface(){ echo __METHOD__, PHP_EOL; } 32 static function namespace(){ echo __METHOD__, PHP_EOL; } 33 static function new(){ echo __METHOD__, PHP_EOL; } 34 static function or(){ echo __METHOD__, PHP_EOL; } 35 static function xor(){ echo __METHOD__, PHP_EOL; } 36 static function try(){ echo __METHOD__, PHP_EOL; } 37 static function use(){ echo __METHOD__, PHP_EOL; } 38 static function var(){ echo __METHOD__, PHP_EOL; } 39 static function exit(){ echo __METHOD__, PHP_EOL; } 40 static function list(){ echo __METHOD__, PHP_EOL; } 41 static function clone(){ echo __METHOD__, PHP_EOL; } 42 static function include(){ echo __METHOD__, PHP_EOL; } 43 static function include_once(){ echo __METHOD__, PHP_EOL; } 44 static function throw(){ echo __METHOD__, PHP_EOL; } 45 static function array(){ echo __METHOD__, PHP_EOL; } 46 static function print(){ echo __METHOD__, PHP_EOL; } 47 static function echo(){ echo __METHOD__, PHP_EOL; } 48 static function require(){ echo __METHOD__, PHP_EOL; } 49 static function require_once(){ echo __METHOD__, PHP_EOL; } 50 static function return(){ echo __METHOD__, PHP_EOL; } 51 static function else(){ echo __METHOD__, PHP_EOL; } 52 static function elseif(){ echo __METHOD__, PHP_EOL; } 53 static function default(){ echo __METHOD__, PHP_EOL; } 54 static function break(){ echo __METHOD__, PHP_EOL; } 55 static function continue(){ echo __METHOD__, PHP_EOL; } 56 static function switch(){ echo __METHOD__, PHP_EOL; } 57 static function yield(){ echo __METHOD__, PHP_EOL; } 58 static function function(){ echo __METHOD__, PHP_EOL; } 59 static function if(){ echo __METHOD__, PHP_EOL; } 60 static function endswitch(){ echo __METHOD__, PHP_EOL; } 61 static function finally(){ echo __METHOD__, PHP_EOL; } 62 static function for(){ echo __METHOD__, PHP_EOL; } 63 static function foreach(){ echo __METHOD__, PHP_EOL; } 64 static function declare(){ echo __METHOD__, PHP_EOL; } 65 static function case(){ echo __METHOD__, PHP_EOL; } 66 static function do(){ echo __METHOD__, PHP_EOL; } 67 static function while(){ echo __METHOD__, PHP_EOL; } 68 static function as(){ echo __METHOD__, PHP_EOL; } 69 static function catch(){ echo __METHOD__, PHP_EOL; } 70 static function die(){ echo __METHOD__, PHP_EOL; } 71 static function self(){ echo __METHOD__, PHP_EOL; } 72 static function parent(){ echo __METHOD__, PHP_EOL; } 73 static function isset(){ echo __METHOD__, PHP_EOL; } 74 static function unset(){ echo __METHOD__, PHP_EOL; } 75 static function __CLASS__(){ echo __METHOD__, PHP_EOL; } 76 static function __TRAIT__(){ echo __METHOD__, PHP_EOL; } 77 static function __FUNCTION__(){ echo __METHOD__, PHP_EOL; } 78 static function __METHOD__(){ echo __METHOD__, PHP_EOL; } 79 static function __LINE__(){ echo __METHOD__, PHP_EOL; } 80 static function __FILE__(){ echo __METHOD__, PHP_EOL; } 81 static function __DIR__(){ echo __METHOD__, PHP_EOL; } 82 static function __NAMESPACE__(){ echo __METHOD__, PHP_EOL; } 83} 84 85Obj::empty(); 86Obj::callable(); 87Obj::class(); 88Obj::trait(); 89Obj::extends(); 90Obj::implements(); 91Obj::static(); 92Obj::abstract(); 93Obj::final(); 94Obj::public(); 95Obj::protected(); 96Obj::private(); 97Obj::const(); 98Obj::enddeclare(); 99Obj::endfor(); 100Obj::endforeach(); 101Obj::endif(); 102Obj::endwhile(); 103Obj::and(); 104Obj::global(); 105Obj::goto(); 106Obj::instanceof(); 107Obj::insteadof(); 108Obj::interface(); 109Obj::namespace(); 110Obj::new(); 111Obj::or(); 112Obj::xor(); 113Obj::try(); 114Obj::use(); 115Obj::var(); 116Obj::exit(); 117Obj::list(); 118Obj::clone(); 119Obj::include(); 120Obj::include_once(); 121Obj::throw(); 122Obj::array(); 123Obj::print(); 124Obj::echo(); 125Obj::require(); 126Obj::require_once(); 127Obj::return(); 128Obj::else(); 129Obj::elseif(); 130Obj::default(); 131Obj::break(); 132Obj::continue(); 133Obj::switch(); 134Obj::yield(); 135Obj::function(); 136Obj::if(); 137Obj::endswitch(); 138Obj::finally(); 139Obj::for(); 140Obj::foreach(); 141Obj::declare(); 142Obj::case(); 143Obj::do(); 144Obj::while(); 145Obj::as(); 146Obj::catch(); 147Obj::die(); 148Obj::self(); 149Obj::parent(); 150Obj::isset(); 151Obj::unset(); 152Obj::__CLASS__(); 153Obj::__TRAIT__(); 154Obj::__FUNCTION__(); 155Obj::__METHOD__(); 156Obj::__LINE__(); 157Obj::__FILE__(); 158Obj::__DIR__(); 159Obj::__NAMESPACE__(); 160 161echo "\nDone\n"; 162 163--EXPECTF-- 164Obj::empty 165Obj::callable 166Obj::class 167Obj::trait 168Obj::extends 169Obj::implements 170Obj::static 171Obj::abstract 172Obj::final 173Obj::public 174Obj::protected 175Obj::private 176Obj::const 177Obj::enddeclare 178Obj::endfor 179Obj::endforeach 180Obj::endif 181Obj::endwhile 182Obj::and 183Obj::global 184Obj::goto 185Obj::instanceof 186Obj::insteadof 187Obj::interface 188Obj::namespace 189Obj::new 190Obj::or 191Obj::xor 192Obj::try 193Obj::use 194Obj::var 195Obj::exit 196Obj::list 197Obj::clone 198Obj::include 199Obj::include_once 200Obj::throw 201Obj::array 202Obj::print 203Obj::echo 204Obj::require 205Obj::require_once 206Obj::return 207Obj::else 208Obj::elseif 209Obj::default 210Obj::break 211Obj::continue 212Obj::switch 213Obj::yield 214Obj::function 215Obj::if 216Obj::endswitch 217Obj::finally 218Obj::for 219Obj::foreach 220Obj::declare 221Obj::case 222Obj::do 223Obj::while 224Obj::as 225Obj::catch 226Obj::die 227Obj::self 228Obj::parent 229Obj::isset 230Obj::unset 231Obj::__CLASS__ 232Obj::__TRAIT__ 233Obj::__FUNCTION__ 234Obj::__METHOD__ 235Obj::__LINE__ 236Obj::__FILE__ 237Obj::__DIR__ 238Obj::__NAMESPACE__ 239 240Done 241