If you want to further compute the variance of two mean-differences, you can use the cov option to get the covariance matrix and then do a simply math of var(L'Beta)=L' Var(Beta) L, and the var(Beta) is the covariance matrix saved in the data set "cov" when you run surveymeans as the following, and I am sure you know your L in your message can be written as (-1, 1, 1, -1).
proc surveymeans data=have ;
cluster firm_id event_year ;
var variable;
domain dummy1*dummy2 / diffmeans cov;
ods output
DomainDiffs=sort_domaindiff
Domain=sort_domain
DomainMeanCov=cov;
run;
I noticed that unless you are just use a small portion of the data as an example for this post, your cluster statement makes each observation a unique PSU, so it's the same as you run the proc without the cluster statement - not that matters, but that seems the only "survey design" information you have in this example. Also, the specific data in your example also results in a diagonal matrix for the said cov matrix, that means you can get what you want with a calculator: var=1.372558, and you can get the t-value as described in the doc as 0.87189/sqrt(1.372558)=0.7442, and you don't have to look up the t-distribution table to know it's insignificant.
Finally, there is no reason you should use surveyreg when you can use surveymeans for this functionality.
... View more